3D Printer/OctoPrint 썸네일형 리스트형 OctoPrint Plugin 만들기 #12 (설치하기) OctoPrint Plugin 만들기 #12 (설치하기) 옥토 프린트 플러그인 만들기 (챔버 매니저) □ 동작 화면 □ 설치 방법 1. 개발 소스가 있는 폴더를 zip 파일로 압축한다. 2. 압축 완료 3. Octoprint의 설정 메뉴에서 Plugin Manager로 들어간다. 4. ... from an uploaded archive의 Browse 버튼을 클릭 5. 방금 전 압축한 파일을 선택한다. 6. Install Button을 클릭한다. 7. 설치 진행 중... 8. 완료되면 Restart Now 버튼을 클릭! 9. 설치가 완료된 모습 □ Source Code [ __init__.py ] 1234567891011121314151617181920212223242526272829303132333435.. 더보기 OctoPrint Plugin 만들기 #11 (시리얼 통신시 별도 쓰레드를 만들어 데이터 전송) OctoPrint Plugin 만들기 #11 (시리얼 통신시 별도 쓰레드를 만들어 데이터 전송) 옥토 프린트 플러그인 만들기 (챔버 매니저) □ 필요 함수 - queue.get() : 할일 꺼내기 - queue.put() : 할일 추가 - queue.task_done() : 할일 완료 처리 - thread.start() : 쓰레드 시작 - _plugin_manager.send_plugin_message : Octoprint Back-End에서 Front-End로 데이터 전송 - onDataUpdaterPluginMessage : Octoprint Back-End에서 Front-End로 데이터 전송시 이벤트 발생 [ __init__.py ] 123456789101112131415161718192021222.. 더보기 OctoPrint Plugin 만들기 #10 (Arduino로부터 전송된 설정값을 Base64로 디코딩하여 저장) OctoPrint Plugin 만들기 #10 (Arduino로부터 전송된 설정값을 Base64로 디코딩) 옥토 프린트 플러그인 만들기 (챔버 매니저) □ 필요 함수 - namedtuple - struct.pack - struct.unpack - base64.b64encode - base64.b64decode [ __init__.py ] 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788from collections import namedtuplefrom str.. 더보기 OctoPrint Plugin 만들기 #9 (온도 그래프 Update시 send_plugin_message 이용하기) OctoPrint Plugin 만들기 #9 (온도 그래프 Update시 send_plugin_message 이용하기) 옥토 프린트 플러그인 만들기 (챔버 매니저) □ 필요 함수 - Back End : send_plugin_message - Front End : onDataUpdaterPluginMessage [ Back End ] 1234567891011121314151617181920212223242526272829 def checkTemperature(self): try: if self.device.is_open == True : # Serial data send msg = 'CMD O'+self.ControlObjectToID['TempCurrent']+' R0\n' self.device.write.. 더보기 Chamber Manager Board 제작 #15 (케이스 제작) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #15 : 케이스 제작 ] □ 참고한 디자인 : Arduino Uno Snug Case (http://www.thingiverse.com/thing:994827) by Esquilo [ Bottom 디자인 ] [ Top Design ] [ 조립 예상 ] [ 3D Printer로 출력 후 ] [ 아두이노 우노 보드 장착 ] [ Top Case 조립 ] [ 마운트용 너트 준비 ] [ 마운트용 볼트 장착 ] [ 커넥터 실드 장착 ] 더보기 Chamber Manager Board 제작 #14 (EEPROM에 설정값 저장하고 불러오기 기능 추가) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #14 : EEPROM에 설정값 저장하고 불러오기 ] □ 필요 사항 - EEPROM Library 사용 : uint8_t EEPROM.read(int idx) => EEPROM에서 데이터 읽기 : void EEPROM.update(int idx, uint8_t val) => 해당 주소에 저장된 데이터와 쓸 데이터가 다를 경우에만 EEPROM에 데이터 쓰기 [ EEPRROM용 함수 작성 ] 1234567891011121314151617181920212223242526272829303132333435363738typedef struct { // Length 27 char firstRun; int Temp_ControlMode; int Temp.. 더보기 Chamber Manager Board 제작 #13 (설정값 전송 기능 추가) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #13 : 설정값 전송 기능 추가 ] □ 필요 사항 - rbase64 library 사용 : 데이터 전송시 Binary값이 아닌 Base64로 인코딩된 Ascii Code로 변환하여 전송 [ 설정값을 저장할 구조체 ] 12345678910111213141516typedef struct { // Length 27 char firstRun; int Temp_ControlMode; int Temp_Target; int Door_Ventil_Pos_Max; int Door_Ventil_Pos_Min; int Door_Filter_Pos_Max; int Door_Filter_Pos_Min; int Door_Ventil_Angle; int Door_.. 더보기 Chamber Manager Board 제작 #12 (LED Control Class 추가) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #12 : LED Control Class 추가 ] □ 추가 사항 - Light Control 구현 [ ChamberManager.ino Execute 함수 수정 ] 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251.. 더보기 Chamber Manager Board 제작 #11 (LED 제어 회로 추가) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #11 : LED 제어 회로 추가 ] □ 추가 사항 - 12V용 LED를 제어하기 위해 TP120을 사용한 회로 추가 (제어는 PIN 11사용) [ Schemetic ] [ PCB Top View ] [ PCB Bottom View ] 더보기 Chamber Manager Board 제작 #10 (명령어 수행 함수 제작) 【 3D 프린터 챔버 만들기 】 [ Control Board 제작 #10 : 명령어 수행 함수 제작 ] □ 추가 필요 사항 - Light Control은 미구현 (회로 추가 및 코드 작성 필요) [ ChamberManager.ino Execute 함수 ] 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121.. 더보기 이전 1 2 3 다음