문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
fa-duino에서_simple_modbus_라이브러리_사용법:index [2019/04/12 16:12] Comfile Technology |
fa-duino에서_simple_modbus_라이브러리_사용법:index [2022/12/05 09:22] Comfile Technology 제거됨 |
||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ======FA-DUINO에서 Simple modbus 라이브러리 사용법====== | ||
+ | ComfileHMI와 FA-DUINO 연결은 RS232C 또는 RS485로 연결합니다. 프로토콜은 Simple MODBUS RTU를 이용하여 통신 할 수 있습니다. | ||
+ | Simple MODBUS는 MODBUS RTU의 기능들 중 핵심기능들 만을 축약해 놓은 프로토콜입니다. | ||
+ | Simple MODBUS 라이브러를 사용하면 보다 쉽게 빠르게 프로토콜을 구현 할 수 있습니다. | ||
+ | |||
+ | * 32TA, 12RA, 24RA 모델은 모두 2560칩을 사용하므로 같은 SimpleMODBUS 라이브러를 쓸 수 있습니다. | ||
+ | |||
+ | |||
+ | ===== 1. Simple modbus 라이브러리 추가 ===== | ||
+ | |||
+ | [[http://comfile.co.kr/download/etc/SimpleModbusRtu_mega2560.h|2560_Simple_ModBUS Header file]] | ||
+ | |||
+ | Simple modbus 라이브러리 파일을 arduino라이브러리 폴더 __\Documents\Arduino\libraries__로 옮겨주셔야합니다~! | ||
+ | |||
+ | {{ :fa-duino에서_simple_modbus_라이브러리_사용법:라이브러리_이용폴더.png?600 |}} | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== 2. Simple modbus 라이브러리 사용방법 ===== | ||
+ | <code c> | ||
+ | #include <SimpleModbusRtu_mega2560.h> // 헤더파일을 include | ||
+ | |||
+ | uint16_t au16data[16]; // 레지스터 메모리 영역(word) | ||
+ | uint8_t au8data[10]; // 코일 메모리 영역(bit) | ||
+ | char n; // | ||
+ | |||
+ | void setup() { | ||
+ | |||
+ | // FA-DUINO port 모드설정 | ||
+ | char i; | ||
+ | for(i=38; i<52; i++){ pinMode(i, OUTPUT); } // 38 ~ 51번의 포트를 출력 | ||
+ | for(i=22; i<38; i++){ pinMode(i, INPUT); } // 22 ~ 37번의 포트를 입력 | ||
+ | | ||
+ | usart1init(57600); // 모드버스 프로토콜 활성화 및 ch1 보래이트 설정 | ||
+ | startSimpleModbus(1,au16data, au8data); // 읽고 쓸 메모리 배열 설정 | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | // port 상태값을 메모리에 읽고 씀. | ||
+ | for(n=0; n<14; n++){ digitalWrite(38+n, bitRead(au8data[0], n) ) ;} | ||
+ | for(n=0; n<16; n++){ bitWrite( au8data[1],n, digitalRead(n+22) ) ;} | ||
+ | au16data[0] = analogRead(A0); | ||
+ | au16data[1] = analogRead(A1); | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== 3. ComfileHMI와 FA-DUINO 결선 ===== | ||
+ | |||
+ | 아래와 같이 FA-DUINO RS232 CH1에 결선합니다. Simple modbus 라이브러리는 RS232 CH1을 지원합니다. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | {{ :fa-duino에서_simple_modbus_라이브러리_사용법:hmi결선.png?400 |}} | ||
+ | |||
+ | 프로젝트 파일입니다. | ||
+ | |||
+ | [[http://comfile.co.kr/download/etc/mega2560_HMI.zip|2560_COMFILEHMI_ProjectFile]] | ||
+ | |||
+ | {{ :fa-duino에서_simple_modbus_라이브러리_사용법:hmiscreen.png?nolink |}} | ||
+ | |||
+ | ===== 4. 샘플 프로젝트 ===== | ||
+ | |||
+ | 다양한 예제입니다. | ||
+ | |||
+ | * [[comfilehmi_fa-duino_샘플_프로젝트_모음:index|FA-DUINO-32TA와 ComfileHMI 샘플 프로젝트 모음]] | ||
+ | |||
+ | [[faduino:index#예제_프로그램|상위 페이지로 이동]] | ||