มีอยู่งานทดลองเล่นๆ งานหนึ่งต้องเอามาเขียนไว้กันลืม
คือการส่งข้อมูลเซนเซอร์ไปให้ PLC ตอนนี้เซนเซอร์เยอะแยะ ประหลาดๆ ราคาถูกๆ มันก็มีเป็น module ของ Arduino ซะเยอะ
คือถ้าเป็นเซนเซอร์ที่ output เป็น Analog หรือไม่ก็มี protocol RS485 ก็ไม่ลำบากไรมาก ต่อเข้า PLC ได้สะดวก แต่ถ้าสื่อสารกันด้วย TTL/I2C/SPI ก็ลำบากนิด
นึกอยากจะใช้เซนเซอร์เหล่านี้ ก็เอาของที่มีอยู่มาลอง ไม่ต้องลงทุนเพิ่มแล้วล่ะ ก็ต่อผ่าน Arduino ให้มันส่งค่าไปให้ PLC
เหมือนงานเก็บข้อมูล ต้องให้ PLC เป็นบ่าว(Slave) แล้วบอร์ดน้อยเป็นนาย(Master)
อ่านค่าได้แล้วก็จัด payload ส่งไปให้ยังเครื่องรับ เป็นแบบนี้วนๆ ไป
ใช้ Function 06:
01 06 00 01 AA BB CR LF | 00 01 คือแอดเดรส ที่ FX3U หมายถึง D1 ชุดคำสั่งต้องอ้างอิงคู่มือ PLC
AA BB คือข้อมูลที่ต้องการส่ง ตบท้ายด้วย CRC ซึ่งต้องเขียนโค้ด เพราะข้อมูลเปลี่ยนไปตามที่วัดจากเซนเซอร์ CRC ก็เปลี่ยน
อุปกรณ์
Sensor <====> Arduino --------->PLC
ในฐานะบ่าวที่ดี PLC ก็ตอบกลับมาแบบเลี่ยงไม่ได้ แต่เราก็ไม่ฟัง สั่งอย่างเดียว (แท้จริงแล้วควรฟังอ่ะนะว่ามันได้อย่างสั่งหรือไม่)
Receiving data on PLC side. |
ต้องส่งเป็น byte เป็นข้อความไม่ได้
กันลืม การต่อขา
DHT11 module
OUT --- PIN_D2
LEVEL CONVERTER TTL-485
TX --- TX PIN0
RX --- RX PIN1
ไม่มีความคิดเห็น:
แสดงความคิดเห็น