ใช้งานกับ AGV

UID คืออะไร และทำไมพอ

ป้าย RFID ทุกใบมี UID เป็นเลข 8 ไบต์ที่ไม่ซ้ำกันทั้งโลก ฝังมาจากโรงงาน เปลี่ยนไม่ได้และไม่มีวันซ้ำ

E0 04 01 50 3F 1A 2B 7C

Tip

ส่วนใหญ่ใช้แค่ UID ก็พอ ไม่ต้องเขียนข้อมูลลงป้ายเลย

วิธีที่ง่ายและพังยากที่สุดคือ — เก็บตารางไว้ในโปรแกรม AGV ว่า UID ไหนคือจุดไหน

E0040150 3F1A2B7C  ->  จุดโหลดของ A
E0040150 8842C19D  ->  ทางแยกที่ 1
E0040150 AA31D40E  ->  จุดชาร์จ

ข้อดี — ป้ายเสียหายก็เอาใบใหม่มาแทนแล้วแก้ตารางจุดเดียว ไม่ต้องเขียนป้าย และไม่มีทางเขียนทับข้อมูลผิดพลาด

เมื่อไหร่ถึงต้องเขียนลงป้าย — เมื่อมีหุ่นหลายตัวที่ต้องรู้ข้อมูลเดียวกัน โดยไม่ต้องซิงก์ตารางกัน หรือเมื่อข้อมูลต้องเปลี่ยนบ่อยที่หน้างาน

ลำดับการทำงานในระบบจริง

AGV วิ่ง ──> โปรแกรมถามหัวอ่านซ้ำ ๆ ──> ได้ UID ──> เทียบตาราง ──> ทำตามคำสั่งของจุดนั้น
                     ↑
              ไม่มีป้าย = ได้ค่าว่าง ไม่ใช่ข้อผิดพลาด

Important

"ไม่มีป้าย" กับ "อ่านไม่สำเร็จ" ต้องแยกกันในโปรแกรม

ตอนหุ่นวิ่งอยู่ระหว่างป้าย การอ่านจะได้ค่าว่างเป็นเรื่องปกติ ไม่ใช่ความผิดพลาด ถ้าเขียนโปรแกรมให้แจ้งเตือนทุกครั้งที่ไม่เจอป้าย จะมีข้อความเตือนท่วมจนไม่มีใครอ่าน

สิ่งที่ควรแจ้งเตือนจริงคือ "ติดต่อหัวอ่านไม่ได้" ซึ่งคนละเรื่องกัน

ความถี่ในการอ่าน — จุดที่พลาดกันบ่อย

Danger

🔴 หุ่นอาจวิ่งผ่านป้ายไปแล้วก่อนถูกอ่านเจอ

หัวอ่านรับป้ายที่วิ่งเร็วกว่า 3 เมตร/วินาทีได้สบาย แต่คอขวดอยู่ที่โปรแกรมของเรา ว่าไปถามบ่อยแค่ไหน

คำนวณง่าย ๆ — ป้ายจะอยู่ในระยะอ่านนานเท่าไร

ระยะที่อ่านได้ ÷ ความเร็วหุ่น = เวลาที่มีให้อ่าน

ป้ายกว้าง 50 มม. · หุ่นวิ่ง 0.5 เมตร/วินาที
0.05 ÷ 0.5 = 0.1 วินาที

มีเวลาแค่ 0.1 วินาที ถ้าโปรแกรมถามทุก 0.5 วินาที จะพลาดป้ายเป็นส่วนใหญ่

ความเร็วหุ่น

ควรถามทุก

0.3 เมตร/วินาที

50 มิลลิวินาที

0.5 เมตร/วินาที

30 มิลลิวินาที

1.0 เมตร/วินาที

15 มิลลิวินาที

Tip

อีกทางคือให้หัวอ่านส่งเองเมื่อเจอป้าย แทนที่จะให้เราไปถามซ้ำ ๆ หัวอ่านรองรับโหมดนี้ ตั้งค่าได้ที่รีจิสเตอร์ควบคุมการส่งอัตโนมัติ

ข้อดีคือไม่พลาดป้ายและไม่เปลืองการสื่อสาร ข้อเสียคือโปรแกรมต้องคอยฟังตลอดเวลา แทนที่จะถามเมื่ออยากรู้

วางป้ายยังไง

เว้นระยะให้พอ — อย่าวางสองใบใกล้กันจนหัวอ่านเห็นพร้อมกัน เพราะจะอ่านได้ใบเดียวแบบเดาไม่ได้ว่าใบไหน

วางก่อนถึงจุดจริง — หุ่นต้องใช้เวลาชะลอ ถ้าวางป้าย "จุดจอด" ไว้ตรงจุดจอดพอดี หุ่นจะเลยไปแล้วค่อยรู้ตัว วางไว้ล่วงหน้าตามระยะเบรกของหุ่น

ป้ายสำรอง — จุดสำคัญควรมี 2 ใบห่างกันเล็กน้อย ถ้าใบแรกอ่านไม่ติดยังมีใบที่สอง

ตรวจก่อนใช้งานจริง

ทำตามลำดับนี้ที่หน้างานจริง ไม่ใช่บนโต๊ะ

1. สั่งไฟติด             ยืนยันว่าคุยกับหัวอ่านได้
2. วางป้ายนิ่ง ๆ อ่าน UID  ยืนยันว่าอ่านป้ายได้
3. วัดระยะอ่านจริง        ค่อย ๆ ยกป้ายขึ้นจนอ่านไม่ได้ จดระยะไว้
4. เข็นหุ่นผ่านป้ายช้า ๆ   ยืนยันว่าอ่านได้ตอนเคลื่อนที่
5. วิ่งด้วยความเร็วจริง    ข้อนี้ที่มักพลาด — เร็วขึ้นแล้วอ่านไม่ทัน

Warning

🔴 ข้อ 3 สำคัญที่สุดและมักถูกข้าม

ระยะอ่านจริงที่หน้างานมักสั้นกว่าในสเปก เพราะเหล็กเสริมในพื้นและโลหะรอบตัวหุ่น ถ้าติดหัวอ่านโดยเชื่อตัวเลขในสเปก อาจใช้ได้ตอนทดสอบแต่พลาดเมื่อล้อสึกลงไปนิดเดียว

ใช้เครื่องมือทดสอบช่วยได้ทุกข้อ — มีทั้งอ่านต่อเนื่อง และนับจำนวนครั้งที่อ่านได้ ใช้ดูว่าเข็นผ่านแล้วอ่านติดกี่ครั้ง