Fig.1 FX2N+PLC display |
อยากรู้ว่า PLC FX2N-10MT ทั้งรุ่นที่มีและไม่มี RS232 port มันสื่อสารอะไรกับ display ผ่าน TTL port หรือ RS232 port
การทำลักษณะนี้เป็นการทำ reverse engineering เราเลือกใช้วิธีการ sniffer ข้อมูลที่ส่งไปมา เอาแบบง่ายหน่อยก็ไปหา MX-component driver แล้วก็ไปดูโค้ดในนั้น หรือไม่ก็ไปหาอ่านคู่มือการสื่อสารของตัว PLC และหนังสือมันน่าจะอ่านลำบากหน่อย อังกฤษทั้งดุ้น คงต้องพักทางนี้ก่อน เอาเป็นว่าต่อสายดูจาก serial monitor เอาก่อนละนะ
Fig.2 FX2N-10MT TTL port. |
เอา display มาต่อกับ PC ลองกดๆ ปุ่มโน่นนี่นั่นแล้วสังเกตุดูที่ Serial monitor (สำหรับ FX2N 9600,7E1 และ FX3U 38400_7E1) พบว่ามันส่ง ASCII มาหากัน มันส่งมารัวๆ เลย
[display] ---send-request-----> [PLC]/[PC]
[display] <---send-reply------- [PLC]/[PC]
ข้อมูลที่ส่ง
Request: ถามค่าของ D0, D2
<STX>0100008<ETX>5C //08 หมายถึง 8 bytes และ 5C คือ LRC
Reply: ตอบกลับค่า D0, D2
<STX>1400000064000000<ETX>12 //12 คือ LRC
ซึ่งมันจะแสดงบน display เลข D2 = 64H = 100 , D0 = 14H = 20
Fig.3 Data displaying on PLC display |
PLC Display มันมีปุ่ม 1. MODE 2.UP 3.DOWN และ 4.RESET โดยที่
UP ใช้ในการ ON-OFF M171
DOWN ใช้ในการ ON-OFF M172
RESET ใช้ในการ ON-OFF M173
MODE เอาไว้ปรับตั้งค่า register D ของ PLC โดย 1.กดปุ่ม mode ค้างไว้ 2.เลือกหมายเลข register (กด up-down เพื่อเปลี่ยนค่า) จากนั้นกด mode ค้าง 3.กำหนดค่า register เมื่อได้แล้วค่าที่ต้องการแล้วให้กด mode ค้างเพื่อบันทึก 4.จากก็กด mode ค้างเพื่อออกจากโปรแกรม
พอเอาคำสั่งที่ใช้ ON/OFF M171 ไปลองส่งจาก PC หา PLC FX2N-10MT มันตอบกลับมาตามปกติ
และยังควบคุม PLC ได้อีกด้วย (ทั้งนี้เราต้องเขียนโปรแกรม PLC ให้ใช้ M171, M172 และ M173 ในการ ON-OFF ใน Ladder)
เลยเถิดจนถึงเอา NodeMCU ไปส่งคำสั่งให้ PLC ก็สามารถ ON-OFF ได้เช่นเดียวกัน
Fig.4 FX2N and NodeMCU communication. |
นี่คือคำสั่งที่ใช้ในการส่งเข้าไปใน PLC ผ่านทาง TTL port เพื่อจะ ON/OFF coil M171-M173
#STX7AB08#ETX25----------ON M171
#STX8AB08#ETX26----------OFF M171
#STX7AC08#ETX26----------ON M172
#STX8AC08#ETX27----------OFF M172
#STX7AD08#ETX27----------ON M173
#STX8AD08#ETX28----------ON M173
และจากการใช้ HMI-OP320 เพื่อลองแบบเดียวกันทำให้ได้ว่า
#STX70004#ETXFE------- ON X0
#STX80004#ETXFF------- OFF X0
ลองเอาไปใส่ NodeMCU ก็ ON-OFF ได้ตามที่ควรจะเป็น ประมาณนี้ เราก็ติดต่อกับ PLC Serial port ได้แล้ว จะเอาไว้ทำการควบคุม PLC ผ่าน NodeMCU /Wifi อีกชั้นก็คงได้
Fig.5 NodeMCU display number on L1N-LED |
แต่ที่ทำมาทั้งหมดทั้งปวง ทำไปก็แค่สนอง Need ตัวเอง
แค่นี้จริงๆ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น