본문으로 바로가기

요즘 참으로 정신이 없습니다. 진득하니 뭔가 하나를 끝내야하는데, A라는 일을 하다가, 갑자기 B하다가, C하다가, 다시 A로 돌아와서 일하다가... 뭐 이러다보니, 시간의 효율성이 무쟈게 떨어지네요. 아무튼, 요즘 또 하나의 공부하는 꼭지로, 리눅스를 건드려보고 있습니다. 일명 LinuxCNC.

본래, 가공 데이터가 공작기계쪽으로 넘어가게되면, G-code로 변환되어 넘어갑니다. 이를 Mach3같은 PC프로그램에서 해석해서 공작기계쪽에 지령을 내리게 되죠. 공작기계쪽은 인터페이스보드가 이 지령을 받아, 다수의 축이 있는 공작기계의 모터의 직접 명령을 가하게 됩니다.

일반적으로 CNC같은 공작기계는 스탭모터를 많이 사용하구요. 그런데, MS-Window기반의 이런 프로그램은 인터넷 문서들의 리포팅을 받아보면, 상황에 따라 명령전달이 잘 되지 않는다고 합니다. 즉, 불안정하다고 하죠. 그리고, 개발 혹은 연구환경을 구축하기 위해 많은 돈이 들구요^^. 저도 그래서 요즘 리눅스 세상에 살~짝 엄지발가락 하나를 걸쳐보고 있답니다.^^. 

아무튼 그리하여,  

linuxcnc라는 오픈프로젝트 사이트에 방문하게 되었네요. LinuxCNC라는 건, Linux/Ubuntu위에 CNC 프로그램을 설치해놓은 버젼인데요.(아직 입문단계라 설명이 허덥합니다.^^) 그래서, 리눅스를 설치하고, 다시 CNC프로그램을 설치하는 것이 아니라, linuxCNC를 바로 설치해야합니다. 

download항목에서, Basic Installation에 들어가서

Linux Ubuntu 10.04에 CNC2.5.1이 포함된 ISO화일이 보이네요. 뭐 설치는 여러 방법이 있겠지만, 저는 이 ISO화일을 윈도에서 다운받아서, CD에 이미지 레코딩을 해버렸습니다. 그리고, CD부팅으로 설치했지요. 시디도 보관할겸^^

리눅스 우분투 10.04의 기본 화면이네요. 여기서

LinuxCNC Stepconf Wizard를 실행하면, 간단히 스탭모터 동작을 한 번 테스트해볼 수 있습니다.

뭐.. 다음이죠^^

뭐.. 또 다음입니다.^^

여기서, 첫 설정이 시작됩니다. 자신의 스탭모터 드라이버와 스탭모터의 재원을 가지고 설정을 해주어야합니다. 제가 테스트한 스탭모터드라이버는, 최근 제가 일하는 연구소에서 초저가(3만원이 안됨^^)로 출시한 스탭모터 드라이버를 대상으로 했습니다.[바로가기] Step Time과 Step Space는 해당 모터드라이버의 재원이 100kHz이므로, 10000나노초로 설정하구요. Direction Hold나 Direction Setup은 검색결과, 정/역방향회전시 정지 시간과 관계가 있다고 하므로, 그냥 그대로 둬 버렸습니다.^^.

이 단계에서, 패러럴포트의 핀맵이 나오는데요. 사용할 인터페이스보드의 핀맵과 맞추면 됩니다만, 제가 사용한 인터페이스보드는 제품명이 없더군요..ㅠㅠ. 그래서 그냥 디폴트로 테스트했는데, 뭐 일단 x,y,z축만 가동 시킬때는 되더군요...ㅠㅠ. 차차 알아보죠^^

여기... X축 하나만 테스트하는 곳에서. Motor steps per revolution이라는 항목은, 제가 테스트한 스탭 모터가 펄스당 1.8도를 움직이는 아이입니다. 360/1.8도를 해보면, 200이 되요. 즉 200펄스면 한바퀴를 돈다는...^^. 그리고, [바로가기]에서 제가 선정한 스탭모터드라이버는 마이크로스탭핑을 지원합니다. 그래서, 드라이버 성능에 맞춰 Driver Microstepping 항목은 8로 잡았습니다. 나머진 그대로^^. 그리고, Test this axis라는 항목을 클릭하면, 일단 스탭모터 하나는 "아~~~ 도는구나..."를 확인할 수 있습니다.^^

저기서, 속도가 가속을 정하고, test area를 정하면, 저 정도 폭으로 좌우로 회전합니다. 그리고, RUN을 눌러주는 거죠^^. Jog를 누르면 조금씩 이동합니다.

이제, 하드웨어 준비물이죠. 뒤쪽, 외편은 굴러댕기는 CNC 인터페이스보드입니다. 전원과, X-Y-Z-A축 단자가 나와 있구요. 그 옆은 PC에서 나온 패러럴포트입니다. PCI슬롯에 꼽히거나, 메인보드에서 직접나온 아이가 아니면 안됩니다. 즉, 노트북같은 것에서 USB-to-Parallel 컨버터 같은 걸로는 안되더라는...ㅠㅠ (괜히 PC 구조도 모르고 삽질을...ㅠㅠ) 그 다음. 앞줄의 왼쪽은 위에서 말씀드린, 마이크로스태핑 모터 드라이버[바로가기]에요. 그옆은 당연히 스탭모터지요^^

결선입니다. 뭐.. 딱히 결선이라고 할 것도 없습니다. 모터드라이버의 설명서대로 모터랑 연결했고, 나머진, 인터페이스 보드의 CLK+-. DIRECTION+- 이렇게 네 개만 연결했을 뿐입니다.^^. 아 물론 전원도 있죠. 그냥 24V 아답터를 사용했습니다.

아주 초간단 테스트였습니다. LinuxCNC를 설치하고, CNC 인터페이스 보드와 PC의 패러럴포트를 연결하고, CNC 인터페이스 보드와 스탭모터 드라이버를 연결하고, 스탭모터 드라이버와 모터를 연결했을 뿐인거죠^^. 그래도 모터를 돌리는 아이니까, 간단히 동영상 하나 보시죠.

흠... 조금씩 시간이 흐를수록 리눅스가 재미있어지네요. 문제는.. 계속 뭔가 다른일들이 겹쳐서 생긴다는 겁니다. 물론 필요한 일이긴 한데... 누군가 하긴 해야할 일인데... 이게... 확실히.. 재미있는 일과, 해야할 일은 차이가 좀 있나 봅니다.ㅠㅠ


댓글을 달아 주세요

  1. BlogIcon +요롱이+ 2012.09.05 18:33 신고

    잘 보구 갑니다!!
    아무쪼록 평안한 하루 되시기 바래요^^

  2. BlogIcon 별이 2012.09.05 23:23

    머리가 좀 아픈데요. 그래도 잘보고갑니다^^
    하루 마무리 잘하시고, 좋은꿈 꾸세요^^

  3. BlogIcon 핑구야 날자 2012.09.06 08:13

    오픈소스라 리눅스가 재미있다고 하더라구요

  4. BlogIcon 나비오 2012.09.06 08:29

    재미있는 일을 하신다니 부럽습니다.
    저도 요즘 이거저거 너무 많은 일에 손을 대다 보니
    하나도 성과가 없었는데 결국은 좋아하는 일을 해야 할 것 같네요
    힘내시구요~~~^^

  5. BlogIcon 빨간내복 2012.09.06 15:35

    이거 멉니까???? ㅠㅠ

  6. BlogIcon 아레아디 2012.09.08 12:10

    행복하고 즐거운 주말 되시길 바래요~

  7. BlogIcon 까움이 2012.09.13 16:55 신고

    리눅스가........이런 용도로?!
    능력자시군요!

  8. BlogIcon 구차니 2012.09.15 08:21

    USB2Parallel은 써보지 않았지만
    USB2Serial의 경우 USB 장비 자체의 버퍼특성으로 인해서 전송이 지연되는 현상이 있더라구요.
    그래서 이런 장비들은 메인보드에 직결되어 있는 시리얼/패러럴을 좋아하는데
    USB로 인해서 전부 멸종상태이니.. 이걸 돌리기 위해서 역설적으로 구형 시스템이 필요해지는 문제가 생길듯 싶어요 ㅠ.ㅠ

    • BlogIcon PinkWink 2012.09.17 13:08 신고

      그러게요. USB로 변환되는 아이들의 경우 패러럴 포트의 프린터는 연결해서 쓸만한데, 이런 작업은 안되더군요....ㅠㅠ

  9. BlogIcon 나비오 2012.09.24 10:53

    같은 포스팅에 두번의 댓글을 다네요 ^^..

    오늘 안철수 후보가 로봇관련 회사에 방문을 한다고 하니 핑크윙크님이 생각이 났어요^^
    안 후보의 로봇회사 방문으로 핑크 윙크님이 일하시기에 좋은 환경 만들어졌으면 좋겠습니다.

    중소기업이 살아남고, 패자가 되어도 다시 뛸 수 있는 기업 기업 연구 환경이 중요한 것 같습니다.

    • BlogIcon PinkWink 2012.09.25 14:21 신고

      아.. 네 저도 어제 뉴스를 봤습니다.
      자율주행로봇에 탑승을 하셨더군요^^
      토목말고, IT에 대한 관심이 또한 집중되었으면 하는 바램도 살짝 들더라구요^^

  10. 오옷 2012.10.19 02:33

    쥔장님. 위에서 사용하신 CNC 인터페이스 보드는 어디서 구하셨나요?
    아님 어느 회사 제품인가요? 저도 보고나니 함 해 공부해 보고싶네요.
    꼭 답글 부탁드려요. 햐아 .. 신기하다 !!! ^^

  11. 2015.05.07 20:56

    비밀댓글입니다