วันที่ 15
เอาโค้ดเดิมจาก KTG_VB03 มาลองปรับแต่ง function ต่างๆ ที่เห็นใน Datasheet พบว่าไม่ work เลย แก้ไป 2 ตัวคือ KTG_VB04 และ KTG_VB05
ลองมาแก้ใหม่ได้เป้น KTG_VB06 แต่ยังติดปัญหาว่าพอเอา RFID Reader สองตัวมาวางใกล้ๆกันแล้ววาง Tag ลงไป มันจะอ่านไม่ได้ แต่พอแยกกัน ก้ดันอ่านได้ซะงั้น
วันที่ 15 ช่วงบ่ายๆ
แก้ดค้ดงมอีกรอบ ได้เป็น KTG_VB07
จากไปเดียเดิมที่ว่าใช้ RFID ทำงานทีละชุดสลับกันไป ในโปรแกรมเราสั่งให้ Reader ทำงานสลับกันไปมาก้จริง แต่ว่าในการใช้คำสั่ง rf_ClosePort เป้นแค่การหยุดการติดต่อกับ Reader เท่านั้น แต่ตัว Reader ยังส่งคลื่น RF ออกมาจากตัวเครื่องอยู่
ทำให้เวลา Reader วางใกล้กันสองเครื่อง มันเลยอ่าน Tag ไม่ได้ เพราะคลื่นซ้อนกัน(น่าจะ) ดังนั้นก่อนจะใช้ rf_closeport เราก็ควรปิดหรือหยุดการส่งคลื่นของ Reader ตัวนั้นๆ ซะก่อน
คำสั่งคือ rf_antenna_sta(0,1) เปิดการทำงานของเสา Reader (Enable)
rf_antenna_sta(0,0) ปิดการทำงานของเสา Reader (Disable)
พอใส่คำสั่งนี้แทรกลงไป ก้สามารถอ่าน Tag ได้ แม้ว่า Reader จะอยู่ใกล้กันก้ตาม
วันที่ 15 ช่วงดึก
ไฟล์ล่าสุดคือ KTG_VB08 ปรับปรุงจาก KTG_VB07 คือ เปลี่ยนการตั้งค่า Port จากเดิมที่ใส่เองในโค้ด มาเป้นการใส่ผ่านเมนูการตั้งค่า คล้ายๆ เมนู Tool > Setup อะไรทำนองนั้น(ตอนนี้คิดได้แค่นี้)
ลองแล้วใช้ได้ แต่จะไม่มีการจำค่าเดิม เพราะไม่รุ้ว่าทำยังไง ตอนนี้ก็ลองใช้ไปก่อน
ใน KTG_VB07, KTG_VB08 ดูเหมือนจะมีปัญหาในการอ่าน Tag หลายๆ ตัวพร้อมกัน ตอนนี้เลยลองกลับมาแก้ KTG_VB03 ใหม่่ แล้วอัพเดตเป็น KTG_VB03.1 แทน (ตัวเก่า 3.0)
ปรับโค้ดให่อ่าน TAG ทีละ TAG แบบจับ TAG วางเอง
No comments: