내용으로 건너뛰기
사용자 도구
사이트 도구
검색
도구
문서 보기
이전 판
역링크
최근 바뀜
미디어 관리자
사이트맵
로그인
>
English
현재 위치:
index
»
cublocapp
»
an61011
cublocapp:an61011:index
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== 아두이노와 HMI 연결 ====== Simple MODBUS 라이브러리를 이용해서 아두이노 우노와 ComfileHMI 를 연결해보았습니다. {{ :cublocapp:an61011:dsc044941.jpg?nolink |}} {{ :cublocapp:an61011:arduinohmi.png?nolink |}} 소스는 보시는 것처럼 간단합니다. <SimpleModbusRtu_uno.h> 이 파일에 필요한 심플모드버스 라이브러리가 들어있습니다. <code c> /** * SimpleModbusRtu_example * http://www.comfile.co.kr */ #include <SimpleModbusRtu_uno.h> uint16_t au16data[16]; uint8_t au8data[10]; char n; int incomingByte = 0; void setup() { pinMode(2, INPUT); pinMode(3, INPUT); pinMode(8, OUTPUT); pinMode(9, OUTPUT); usart0init(57600); // 9600, 19200, 38400, 57600 , Serial channel0 startSimpleModbus(1,au16data, au8data); // slave address, register, coil } void loop() { digitalWrite(8, bitRead(au8data[0],0) ); digitalWrite(9, bitRead(au8data[0],1) ); bitWrite( au8data[1],0, digitalRead(2) ); bitWrite( au8data[1],1, digitalRead(3) ); au16data[0] = analogRead(A0); au16data[1] = analogRead(A1); } </code> 아래 2개 명령으로 USART를 Open하고 Simple Modbus를 시작합니다. **아두이노에서는 115200 보레이트를 사용하실 수 없습니다.** usart0init(57600); // 9600, 19200, 38400, 57600 , Serial channel0 startSimpleModbus(1,au16data, au8data); // slave address, register, coil 이후, HMI는 알아서 아두이노와 서로 통신합니다. 결과는 <code> uint16_t au16data[16]; uint8_t au8data[10]; </code> 이 두개의 배열에 저장됩니다. 또한 여러분이 이 배열에 어떤 값을 써넣으면 HMI로 그 값이 전달됩니다. 쌍방간의 통신을 위한 링크채널이라고 보시면 됩니다. [[http://www.comfile.co.kr/download/hmi/HMIuno.zip|아두이노 소스 파일]] [[http://www.comfile.co.kr/download/hmi/ComfileHMI-ARDUINO.zip|ComfileHMI 프로젝트 파일]] <html><center> <iframe width="560" height="315" src="https://www.youtube.com/embed/F3ZuMVmsiWo" frameborder="0" allowfullscreen=""></iframe> </center></html> [[cublocapp:index|이전 단계로]]
cublocapp/an61011/index.txt
· 마지막으로 수정됨: 2017/11/02 16:46 저자
Comfile Technology
문서 도구
문서 보기
이전 판
역링크
맨 위로