การบันทึกเพื่อหาสาเหตุควรทราบว่าเครื่องมือมีส่วนเปลี่ยนสิ่งที่กำลังสังเกตหรือไม่ ใน CAN แม้โปรแกรมไม่ได้สั่งส่งเฟรมข้อมูล อินเทอร์เฟซในโหมดปกติก็อาจตอบรับเฟรมที่ถูกต้องอยู่ การฟังแบบ silent หรือ listen-only จึงมีบทบาทในการรักษาพฤติกรรมระดับโปรโตคอล แต่คำว่าไม่ส่งไม่ได้ครอบคลุมผลทางไฟฟ้าทั้งหมด บทความนี้แยกสองประเด็นเพื่อช่วยเตรียมการบันทึกอย่างมีเหตุผล
โหมดฟังต่างจากการไม่มีคำสั่งส่งในโปรแกรม
คู่มือ Kvaser อธิบาย silent mode ว่าไม่ส่งเฟรมข้อมูล เฟรมข้อผิดพลาด หรือ ACK ความหมายนี้เข้มกว่าการเปิดโปรแกรมแล้วไม่กดปุ่มส่ง เพราะตัวควบคุมในโหมดปกติทำบางส่วนของโปรโตคอลเอง การเลือกโหมดจึงต้องอ้างอิงคำอธิบายของฮาร์ดแวร์ที่ใช้ ไม่อาศัยชื่อหน้าจอเพียงอย่างเดียว หากโปรแกรมมีหลายช่องต้องตรวจว่าตั้งโหมดให้ช่องที่ต่ออยู่จริง
เมื่อเครื่องมือไม่ตอบ ACK มันก็ไม่สามารถทดแทนผู้รับที่หายไปได้ คุณสมบัตินี้มีประโยชน์ในการสังเกตเครือข่ายที่ทำงานอยู่แล้ว แต่มีข้อจำกัดบนชุดฝึกที่มีผู้ส่งเพียงตัวเดียว หากไม่มีผู้รับปกติอื่นเลย ผู้ส่งย่อมไม่ได้ ACK จากเครื่องมือฟัง ทั้งที่เครื่องมืออาจเห็นความพยายามส่ง การไม่มีข้อความสำเร็จในสถานการณ์นี้จึงไม่ใช่หลักฐานว่าตัวบันทึกเสีย
- โปรแกรมไม่ส่ง
อินเทอร์เฟซโหมดปกติยังอาจตอบ ACK โดยตัวควบคุมทำเอง
- เลือกโหมดฟัง
โหมดที่คู่มือรับรองไม่ส่งเฟรมข้อมูล เฟรมผิดพลาด และ ACK
- ยังมีวงจรต่ออยู่
สายและภาครับยังเพิ่มโหลด ต้องตรวจตัวจบสายและความยาวแขนงแยกจากโหมด
แยกพฤติกรรมโปรโตคอลออกจากผลทางไฟฟ้าของการต่อเครื่องมือ
ตัวอย่างสมมติของผลที่เปลี่ยนตามโหมด
สมมติชุดฝึกมีผู้ส่ง ก ผู้รับ ข และเครื่องบันทึก ค เมื่อ ข ทำงาน ก ส่งผ่านและ ค บันทึกได้ทั้งในโหมดปกติและโหมดฟัง ต่อมาสมมติ ข หยุดทำงาน ถ้า ค อยู่โหมดปกติ มันอาจยังตอบ ACK ให้ ก ทำให้สถานะส่งผ่านยังคงอยู่ แต่ถ้า ค ฟังอย่างเดียว ก จะไม่มีผู้ตอบรับในชุดนี้ ความต่างจึงเกิดจากบทบาทของ ค ไม่ใช่การเปลี่ยนข้อมูลของ ก
ผู้วิเคราะห์ที่ไม่บันทึกโหมดอาจตีความว่าต่อเครื่องมือแล้วปัญหาหาย และเปลี่ยนอะไหล่จากข้อสรุปนั้น ทั้งที่เครื่องมือเพียงเข้ามารับเฟรมแทนผู้รับเดิม ในตัวอย่างต้องบันทึกแยกว่าสถานะส่งผ่านเปลี่ยนอย่างไร และ ข ทำงานจริงหรือไม่ การเปรียบเทียบก่อนหลังมีความหมายก็ต่อเมื่ออธิบายตัวแปรที่เปลี่ยนได้ ไม่ใช่ใช้การหายของข้อความเตือนเป็นเกณฑ์เดียว
นำไปใช้เตรียมการบันทึกแบบอ่านอย่างเดียว
- อ่านคู่มือว่าโหมดฟังปิดพฤติกรรมใดบ้าง และอุปกรณ์รองรับจริงหรือเป็นเพียงตัวกรองซอฟต์แวร์
- บันทึกการตั้งค่าช่อง ชนิด CAN อัตราบิต และรูปแบบ FD ตามข้อมูลที่ยืนยันแล้ว
- ตรวจตัวต้านทานปลายสายที่อาจเปิดอยู่ในอินเทอร์เฟซ เพราะโหมด silent ไม่ได้แปลว่าปิดตัวจบสาย
- ใช้การเชื่อมต่อที่เอกสารเครือข่ายอนุญาต พร้อมตรวจสายแยกและโหลดที่เพิ่มจากอุปกรณ์
- เก็บสถานะเริ่มและหยุดบันทึก รวมถึงข้อบ่งชี้ข้อมูลตกหล่น เพื่อแยกการสื่อสารหายจากเครื่องมือเก็บไม่ทัน
การอ่านอย่างเดียวควรครอบคลุมการตั้งโปรแกรมรอบข้างด้วย เช่นไม่มีงานส่งตามคาบจากหน้าต่างอื่นของเครื่องมือเดียวกัน การปิดปุ่มส่งในหน้าต่างที่กำลังดูไม่ได้บอกว่าช่องฮาร์ดแวร์ไม่มีผู้ใช้อื่น ในงานที่ต้องตรวจความนิ่งของสภาพทดลอง ควรมีบันทึกการตั้งค่าและรายการช่องที่ใช้งาน ไม่เปลี่ยนหลายส่วนพร้อมกันแล้วอ้างผลว่าเกิดจากโหมดฟังเพียงส่วนเดียว
- ก ส่ง ข รับ
ข ทำงานตามปกติ ค จึงบันทึกได้ทั้งโหมดปกติและโหมดฟัง
- ข หยุดทำงาน
ไม่มีผู้รับ ข ช่วยตอบรับอีกต่อไป
- ค โหมดปกติ
ค อาจตอบ ACK ให้ ก ทำให้สถานะส่งผ่านยังอยู่แม้ ข หาย
- ค โหมดฟัง
ค ไม่ตอบ ACK ก จึงไม่มีผู้ตอบรับในชุดสมมตินี้ ต้องจดโหมดเพื่อเทียบผล
ตัวอย่างชุดฝึกเดียวกันให้ผลต่างเมื่อบทบาทเครื่องบันทึกเปลี่ยน
ข้อจำกัดทางไฟฟ้ายังมีอยู่แม้ไม่ส่ง
ภาครับ สายเชื่อมต่อ และความจุของอุปกรณ์ยังเป็นส่วนหนึ่งของวงจรเมื่อเชื่อมอยู่ จึงอาจเปลี่ยนรูปขอบสัญญาณหรือสร้างสายแยกเพิ่มได้ silent mode ไม่ใช่การแยกทางไฟฟ้าและไม่ใช่สิทธิ์ให้ต่อจุดใดก็ได้ ตัวอย่างเชิงหลักการคือเครื่องมือสองตัวต่างไม่ส่ง แต่ตัวหนึ่งมีสายต่อยาวกว่ามาก สภาพสัญญาณที่จุดต่ออาจไม่เหมือนกันแม้การตั้งโปรโตคอลตรงกันทุกค่า
ยังต้องแยกตัวกรองรับออกจากการฟังทั้งบัส เครื่องมืออาจรับทางกายภาพได้แต่แสดงเฉพาะข้อความบางชนิด หากไม่เห็นข้อความที่สนใจ ให้ตรวจตัวกรองก่อนสรุปว่าโหนดหยุดส่ง ในทางกลับกันการปิดตัวกรองเพิ่มจำนวนข้อมูลที่ต้องบันทึก จึงต้องตรวจความสามารถเก็บและสถานะล้นด้วย การไม่พบเฟรมในไฟล์มีหลายคำอธิบายซึ่งต้องคัดออกด้วยข้อมูลเครื่องมือ
ตรวจสอบผลโดยรักษาบทบาทของเครื่องมือให้คงที่
ผลบันทึกควรระบุว่าเครื่องมือฟังโดยไม่ตอบ ACK และเชื่อมต่อด้วยสภาพใด เมื่อเทียบอาการสองครั้งให้ใช้บทบาทเดียวกัน หากจำเป็นต้องเปรียบเทียบโหมดในชุดฝึก ควรระบุว่าเป็นการเปลี่ยนตัวแปรทดลองและยืนยันผู้รับที่ยังทำงานอยู่ด้วย ข้อสรุปว่าการฟังไม่มีผลต่อระบบต้องมีหลักฐานทั้งระดับโปรโตคอลและข้อพิจารณาทางไฟฟ้า ไม่ใช่เพียงไม่มีเฟรมที่โปรแกรมตั้งใจส่ง
หากเครื่องมือรายงานว่าไม่มีข้อมูล แต่โหนดอื่นยังทำงานตามปกติ สิ่งที่ควรตรวจคือช่องที่เลือก ความเร็ว ตัวกรอง และความต่อเนื่องของบันทึกก่อน ส่วนหากโหนดอื่นมีอาการเปลี่ยนทันทีที่เชื่อม ต้องตรวจการต่อและโหลดโดยยึดขั้นตอนผู้ผลิต ไม่ใช้การสลับโหมดไปมาในรถเพื่อทดลองสุ่ม การสังเกตที่ดีควรทำให้รู้ทั้งสิ่งที่เครือข่ายทำและสิ่งที่เครื่องมือเพิ่มเข้าไป


