산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

FirePick Delta, 오픈 소스 MicroFactory를 위한 프로젝트 로그

소프트웨어 토폴로지 및 작동 이론

OpenPnP는 기계의 상위 수준 두뇌로, "그 부분을 집어 들고" "거기에 놓기"와 같이 겉보기에는 단순해 보이는 작업을 수행합니다. 많은 라이브러리와 하위 시스템이 정보를 제공하고 다른 라이브러리 및 소프트웨어 모듈을 통해 다양한 모터와 액추에이터에 정보를 전달합니다. FirePick Delta가 시작되기 훨씬 전에 Jason von Nieda가 만들었습니다. 기술적으로 아직 알파 상태이지만 기본 소프트웨어는 견고하고 여러 생산 기계에서 사용되었습니다. 잘 작성되고 모듈화되고 확장 가능했지만 문서는 훌륭하지 않았습니다... 지금까지는. 오픈 소스 및 전체 공개의 정신으로 OpenPnP를 직접 문서화하기로 결정했습니다. 이 모든 것이 공식 프로젝트의 상류로 밀려나기를 바랍니다.

위에 표시된 Java 파일('JAR' 아이콘)은 교체하거나 고유한 시스템 구성을 만들기 위한 기본 클래스로 사용할 수 있습니다. 위의 각 Java 파일(구성 모델 제외)은 'machine.xml' 파일에 지정할 수 있습니다. Java에 익숙하지 않은 경우 이상하게 보일 수 있지만 정말 깔끔합니다. 이는 여러 .java 파일에 대한 경로를 지정할 수 있다는 것을 의미하며, 이는 인스턴스화 및 사용되는 클래스를 결정하여 동작을 변경합니다. 그것은 코드를 정말 깨끗하고 모듈화하여 유지하며, 이는 픽 앤 플레이스 머신과 같은 복잡한 작업에 중요합니다. OpenPnP는 TinyG 모션 컨트롤, 단일 헤드, 단일 노즐 및 액추에이터, 드래그 테이프 피드, 하향식 카메라를 사용한 바닐라 PnP 구현을 위한 참조 파일 세트와 함께 제공됩니다. 우리가 필요로 하는 모든 미친 작업을 수행할 수 있도록 많은 부분을 수정했습니다.

모션 드라이버: RepRap RAMPS 1.4 및 수정된 Marlin 펌웨어를 실행하는 Melzi 보드에서 영감을 받은 맞춤형 모션 컨트롤러 보드를 사용하고 있습니다. 모션 컨트롤러에 올바른 g-코드를 보내는 OpenPnP Marlin 드라이버를 작성했습니다. 이것은 현재로서는 훌륭하게 작동하지만 메모리가 제한적이고 부동 소수점이 없는 8비트 arduino에서 델타 계산 및 다중 포인트 Z-프로브 수정을 수행하는 것이 모든 컴퓨팅 파워가 켜져 있을 때 약간 멍청해 보인다는 것을 발견했습니다. 파이. 또한 카메라와 사용자 지정 XY 보정 앱을 사용하여 정확도를 높이고 싶고 Pi에서 이러한 계산을 훨씬 쉽고 빠르게 수행할 수 있습니다. 그러나 이 코드는 OpenPnP의 일부가 아닙니다. 향후 다른 앱을 제공할 계획이기 때문입니다. 즉, OpenPnP는 모션 컨트롤러와 직접 통신할 수 없으며 델타 계산 및 XYZ 보정 오프셋을 수행하는 소프트웨어 계층을 거쳐야 합니다. 우리는 모든 코드를 FireFUSE(사용자 공간 매퍼의 파일 시스템)로 래핑하여 나중에 다룰 많은 깔끔한 작업을 수행할 수 있습니다. 이것은 대부분 매우 투명합니다. OpenPnP가 '/dev/ttys0'에 쓰는 대신 '/dev/firefuse/sync/cnc/marlin/gcode.fire'에 씁니다. FireFUSE는 데카르트 좌표를 델타 좌표로 변환하고 기계 자동 보정 프로세스에서 보간된 점을 사용하여 오류 오프셋을 계산하고 이 새로운 g-코드를 말린 드라이버로 보냅니다. 그리고 그 코드는 이식 가능하며 3D 프린팅 앱, 솔더 페이스트 디스펜스 앱 등과 함께 사용할 수 있습니다. OpenPnP가 FireFUSE와 통신하도록 하는 데 필요한 유일한 것은 현재 작성 중인 FireFUSE 드라이버입니다.

카메라 드라이버 및 비전 프레임워크 :OpenPnP의 카메라 지원은 약간 까다로웠고 멋진 5백만 화소 Raspberry Pi 카메라를 지원하지 않았습니다. 그들의 컴퓨터 비전은 OpenCV 코드 위에 있는 얇은 shim으로, 아주 기본적인 구멍 찾기를 구현했지만 그 외에는 그다지 많지 않았습니다. 우리 소프트웨어 전문가인 Karl Lew는 이것을 큰 문제로 보고 지난 1~2년 동안 FireSight라는 놀라운 오픈 소스 비전 라이브러리를 작성했습니다. 그는 높은 수준의 수학이나 낮은 수준의 C/C++ 지식이 필요하지 않은 매우 높은 수준의 방식으로 파이프라인으로 함께 묶을 수 있는 수십 개의 멋진 비전 루틴을 작성했습니다. 카메라의 경우 FirePiCam이라는 'raspistill'의 사용자 정의 버전과 함께 언급된 RasPi 카메라 모듈을 사용하고 있습니다. 우리는 스냅샷 이미지를 찍어 SD 카드의 FLASH 메모리에 있는 비트가 소모되지 않도록 FUSE 파일 시스템에 저장합니다. OpenPnP가 이미지를 보고 컴퓨터 비전 작업을 수행하도록 하기 위해 Karl은 모든 것이 작동하도록 하는 'firerest-client'라는 자바 라이브러리를 작성했습니다.

GUI :OpenPnP Java GUI는 정말 투박하고 직관적이지 않으며 전용 모니터를 Raspberry Pi에 연결하는 것은 2014년에 약간 미친 것처럼 보입니다. 일명 사물 인터넷의 시작입니다. 우리는 사용자 인터페이스가 모든 HTML5 브라우저에서 볼 수 있는 맞춤형 웹 앱이 되기를 바랍니다. 이 기능은 OpenPnP를 통해 직접 지원되지 않지만 약간의 작업으로 수행할 수 있습니다. 다행히 Jason은 GUI를 우회하는 시스템 및 파일 구성 기능에 대한 생성자를 호출할 수 있는 OpenPnP를 작성했습니다. github에서 찾은 일부 코드 덕분에 많은 작업 없이 node-java 브리지를 사용하여 javascript에서 Java 함수를 호출하거나 그 반대로 할 수 있습니다. 이제 node.js, Express, AngularJS 및 Twitter Bootstrap을 사용하여 영리한 웹 앱을 작성하기만 하면 됩니다. 우리는 지금 그 앱을 작성하는 초기 단계에 있습니다. 그동안 OpenPNP를 정상적으로 실행하고 기본 GUI를 사용하여 시스템의 다른 비트를 디버깅할 수 있습니다.

하드웨어 토폴로지 및 작동 이론

우리는 표준 Raspberry Pi Model B+를 사용합니다. B+는 우리가 항상 원했던 RPi입니다. 그들은 커넥터를 보다 논리적인 위치로 옮기고 실제 장착 구멍 세트를 추가했습니다. 여전히 형편없는 느린 Broadcom 2835가 있지만 30달러에 무엇을 기대합니까? 우리는 종종 "왜 BeagleBone Black을 사용하셨습니까?"라는 질문을 받습니다. 또는 12개의 다른 단일 보드 컴퓨터. 대답은 매우 간단합니다. 우리는 300달러짜리 머신을 목표로 하고 있는데, 이는 우리가 저렴한 싱글 보드 컴퓨터를 선택해야 한다는 것을 의미합니다. Raspberry Pi가 가장 저렴하므로 이깁니다. QED. 🙂 사실, 우리는 BeagleBone 블랙과 Allwinner A4, Intel Galileo와 같은 다른 플랫폼과 Mini ITX와 같은 더 전통적인 설정을 상당히 좋아합니다. 우리의 모든 소프트웨어와 하드웨어는 이러한 플랫폼에서 작동해야 합니다. 하지만 가격이 비싸고 Raspberry Pi가 작업을 완료합니다.

우리는 실제로 지금까지 Pi의 성능에 놀랐습니다. 조명이 빠르지는 않지만 컴퓨터 비전을 수행하고 문제 없이 웹 페이지를 제공합니다.

ERPIHAT01 모자 보드

Raspberry Pi Model B+가 출시된 직후 RPi Foundation은 Arduino Shield 또는 BeagleBone 망토와 매우 유사한 "HAT" 사양을 발표했습니다. 각종 케이블이나 잡다한 일 없이 라즈베리파이에 깔끔한 것을 추가할 수 있는 맞춤형 형태의 메자닌 보드입니다. HAT 이전에 플러그인 모듈이 있었지만 표준화되지 않았습니다. 새로운 HAT 사양에 만족하며 아래 FirePick Delta HAT를 자랑스럽게 소개합니다.

FirePick Delta HAT가 하는 일 목록은 다음과 같습니다.

<울>
  • Raspberry Pi GPIO 커넥터에 연결된 16×2 문자 LCD 커넥터 제공
  • Raspberry Pi GPIO 커넥터에 연결된 로터리 인코더 및 푸시버튼 스위치(LED 포함)용 커넥터 제공
  • 12V -> 5V 강압 스위칭 전원 공급 장치를 Raspberry Pi에 제공합니다.
  • RasPi 카메라 모듈용 통과 커넥터를 제공하여 카메라를 델타 메커니즘의 엔드 이펙터로 확장할 수 있습니다.
  • GPIO 커넥터에 있는 RasPi의 유일한 PWM 핀에서 구동되는 압전 부저를 제공합니다. 이것은 Pi의 오디오 잭을 사용하는 것보다 저렴했습니다.
  • 공식 HAT 사양에 따라 이 보드는 필요한 EEPROM 칩과 +5VDC 입력에 대한 백피드 보호 기능을 제공합니다. GPIO 커넥터를 통해 전원을 공급하기 때문에 마이크로 USB 커넥터를 통해 전원을 공급할 필요가 없습니다.
  • 자세한 내용:Open Source MicroFactory인 FirePick Delta의 프로젝트 로그


    제조공정

    1. 오픈 소스 용어 소개
    2. 오픈 소스와 IoT:협업을 통한 혁신
    3. Raspberry Pi용 DHT Tiny Breakout
    4. Raspberry Pi를 위한 최고의 액세서리
    5. 시력:시각 장애인용
    6. 스마트 펜:ECE5725의 최종 프로젝트
    7. 건축 프로젝트의 물류 관리를 위한 3가지 팁
    8. 엣지에서 오픈 소스의 필요성(eBook)
    9. 프로젝트에 적합한 크레인을 선택하는 방법
    10. 기술자를 위한 새로운 생산성 원천인 스마트 안경?