วันจันทร์ที่ 4 ตุลาคม พ.ศ. 2564

PLC DISPLAY, JL1N-LED-0.56

      

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>140000
0064000000<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 ตัวเอง
แค่นี้จริงๆ



ไม่มีความคิดเห็น:

แสดงความคิดเห็น

MAPs

วันก่อนได้ลองเขียนแบบ แบบตัวนั้นมันต้องแนบแผนที่สังเขปของโครงการ ลองๆ แล้วก็ใช้ snazzymaps แล้วก็เอามาทำต่อใน inkscape มันก็ออกมาดูได้ระดับห...