ประเภท: บทความเด่น » อิเล็กทรอนิคส์ในทางปฏิบัติ
จำนวนการดู: 71885
ความเห็นเกี่ยวกับบทความ: 5
อะแดปเตอร์ RS-232 อย่างง่าย - วนรอบปัจจุบัน
อะแดปเตอร์สำหรับเชื่อมต่อคอมพิวเตอร์พีซีและคอนโทรลเลอร์ด้วยอินเทอร์เฟซแบบวนรอบปัจจุบัน มันไม่จำเป็นต้องใช้ชิ้นส่วนที่หายากมันสามารถใช้ได้สำหรับการผลิตแม้ที่บ้าน
ในปี 1969 สมาคมอุตสาหกรรมอิเล็กทรอนิกส์อเมริกันได้พัฒนาส่วนต่อประสานการสื่อสาร RS-232C วัตถุประสงค์เริ่มต้นคือเพื่อให้การสื่อสารระหว่างคอมพิวเตอร์ที่อยู่ห่างไกลในระยะไกล
อะนาล็อกของอินเตอร์เฟสนี้ในรัสเซียเรียกว่า "Joint S2" การสื่อสารระหว่างคอมพิวเตอร์ดำเนินการโดยใช้โมเด็ม แต่ในเวลาเดียวกันอุปกรณ์เช่น "เมาส์" ซึ่งเรียกว่า "komovskaya" เช่นเดียวกับสแกนเนอร์และเครื่องพิมพ์เชื่อมต่อกับคอมพิวเตอร์ผ่านทางอินเตอร์เฟส RS-232C แน่นอนว่าพวกเขาทั้งหมดสามารถเชื่อมต่อผ่านอินเทอร์เฟซ RS-232C ได้
ปัจจุบันอุปกรณ์ดังกล่าวใช้งานไม่ได้สมบูรณ์แม้ว่า RS-232C ยังเป็นที่ต้องการ: แม้บางแล็ปท็อปรุ่นใหม่จะมีส่วนต่อประสานนี้ ตัวอย่างของแล็ปท็อปดังกล่าวคือแล็ปท็อปอุตสาหกรรมรุ่น TS Strong @ Master 7020T series Core2Duo เช่นแล็ปท็อปในร้านค้า "คอมพิวเตอร์ที่บ้าน" ของหลักสูตรไม่ได้ขาย
คอนโทรลเลอร์อุตสาหกรรมบางตัวมีอินเตอร์เฟสการวนรอบปัจจุบัน ในการเชื่อมต่อคอมพิวเตอร์ด้วยอินเทอร์เฟซ RS-232C และคอนโทรลเลอร์ที่คล้ายคลึงกันจะใช้อะแดปเตอร์หลายตัว บทความนี้จะอธิบายหนึ่งในนั้น
อะแดปเตอร์ RS-232 - Loop ปัจจุบันได้รับการพัฒนาโดยผู้เชี่ยวชาญขององค์กรของเราและระหว่างการดำเนินการมีความน่าเชื่อถือสูง คุณสมบัติที่โดดเด่นของมันคือให้การแยกกัลวานิกอย่างสมบูรณ์ของคอมพิวเตอร์และคอนโทรลเลอร์ การออกแบบวงจรดังกล่าวช่วยลดโอกาสเกิดความผิดพลาดของอุปกรณ์ทั้งสองได้อย่างมาก นอกจากนี้มันเป็นเรื่องง่ายที่จะทำให้ตัวเองภายใต้เงื่อนไขการผลิต: โครงการมีปริมาณไม่มากไม่มีส่วนประกอบที่หายากและตามกฎแล้วไม่จำเป็นต้องปรับเปลี่ยน
เพื่ออธิบายการทำงานของวงจรนี้จำเป็นต้องเรียกคืนอย่างน้อยก็ในแง่ทั่วไปการทำงานของ RS-232C และ Current Loop interface สิ่งเดียวที่รวมเข้าด้วยกันคือการส่งข้อมูลแบบอนุกรม
ความแตกต่างคือสัญญาณมีระดับทางกายภาพที่แตกต่างกัน นอกจากนี้อินเตอร์เฟส RS-232C นอกเหนือจากสายส่งข้อมูลจริงแล้วยังมีสัญญาณควบคุมเพิ่มเติมอีกหลายตัวที่ออกแบบมาเพื่อทำงานกับโมเด็ม
กระบวนการส่งข้อมูลบนสาย TxD แสดงในรูปที่ 1 (TxD เป็นสายตัวส่งข้อมูลจากข้อมูลนั้นเรียงตามลำดับจากคอมพิวเตอร์)
ก่อนอื่นควรสังเกตว่าข้อมูลถูกส่งโดยใช้แรงดันไฟฟ้าแบบสองขั้ว: ระดับของศูนย์โลจิคัลในบรรทัดสอดคล้องกับแรงดันไฟฟ้าที่ +3 ... + 12V และระดับของหน่วยโลจิคัล -3 ... 12V ตามคำศัพท์ที่มาจากเทคโนโลยีโทรเลขสถานะของศูนย์โลจิคัลบางครั้งเรียกว่า SPASE หรือ "depress" ในขณะที่หน่วยโลจิคัลเรียกว่า MARK - "press"
รูปที่ 1
สำหรับวงจรควบคุมแรงดันบวกจะสอดคล้องกับหน่วยโลจิคัล (เปิด) และแรงดันลบเป็นศูนย์ตรรกะ (ปิด) การวัดทั้งหมดทำด้วยความเคารพต่อหน้าสัมผัส SG (แหล่งข้อมูล)
การถ่ายโอนข้อมูลจริงดำเนินการในโหมดเริ่มต้นโดยวิธีอะซิงโครนัสตามลำดับ แอปพลิเคชันของวิธีนี้ไม่ต้องการการส่งสัญญาณการซิงโครไนซ์เพิ่มเติมและดังนั้นจึงต้องมีสายเพิ่มเติมสำหรับการส่งสัญญาณ
ข้อมูลถูกส่งเป็นไบต์ (เลขฐานสองแปดบิต) ซึ่งเสริมด้วยข้อมูลค่าใช้จ่าย ประการแรกมันเป็นบิตเริ่มต้น (บิตเป็นหนึ่งบิตไบนารี) หลังจากนั้นแปดบิตข้อมูลตามมา ข้างหลังพวกเขามาบิตพาริตี้และหลังจากนั้นบิตหยุด อาจมีหลายบิตหยุด (บิตเป็นตัวย่อสำหรับเลขฐานสองภาษาอังกฤษ - เป็นเลขฐานสอง)
ในกรณีที่ไม่มีการส่งข้อมูลเส้นจะอยู่ในสถานะของหน่วยโลจิคัล (แรงดันไฟฟ้าในบรรทัดคือ -3 ... 12V) บิตเริ่มตนสงสัญญาณตั้งคาบรรทัดใหอยูในระดับศูนยลอจิก ตัวรับสัญญาณที่เชื่อมต่อกับสายนี้เมื่อได้รับบิตเริ่มต้นจะเริ่มตัวนับที่นับช่วงเวลาที่ต้องการสำหรับการส่งแต่ละบิต ในช่วงเวลาที่เหมาะสมตามกฎในช่วงกลางของช่วงเวลาผู้รับจะเข้าสู่สถานะของบรรทัดและจดจำสถานะของมัน วิธีนี้อ่านข้อมูลจากบรรทัด
เพื่อตรวจสอบความน่าเชื่อถือของข้อมูลที่ได้รับบิตตรวจสอบความเท่าเทียมกันจะถูกนำมาใช้: ถ้าจำนวนของหน่วยที่มีอยู่ในไบต์ที่ส่งเป็นคี่จากนั้นเพิ่มอีกหนึ่งหน่วย - บิตตรวจสอบความเท่าเทียมกัน (อย่างไรก็ตามอันนี้สามารถเพิ่มไบต์ในทางตรงกันข้ามจนกว่ามันจะแปลกทั้งหมดขึ้นอยู่กับโปรโตคอลการถ่ายโอนข้อมูลที่ยอมรับ)
ที่ด้านรับนั้นจะตรวจสอบความเท่าเทียมกันและหากตรวจพบหน่วยคี่จำนวนโปรแกรมจะแก้ไขข้อผิดพลาดและดำเนินมาตรการเพื่อกำจัดมัน ตัวอย่างเช่นมันอาจร้องขอการส่งสัญญาณซ้ำของไบต์ที่ล้มเหลว จริงอยู่การตรวจสอบพาริตีไม่ได้เปิดใช้งานเสมอโหมดนี้สามารถปิดได้ง่ายและบิตการตรวจสอบในกรณีนี้จะไม่ถูกส่ง
การส่งข้อมูลของแต่ละไบต์จะจบลงด้วยบิตหยุด จุดประสงค์ของพวกเขาคือการหยุดการทำงานของผู้รับซึ่งตามที่หนึ่งของพวกเขาไปเพื่อรอรับไบต์ถัดไปที่จะได้รับแม่นยำมากขึ้นบิตเริ่มต้นของมัน ระดับบิตหยุดเป็นตรรกะ 1 เสมอเช่นเดียวกับระดับในหยุดชั่วคราวระหว่างการถ่ายโอนคำ ดังนั้นโดยการเปลี่ยนจำนวนบิตหยุดคุณสามารถปรับระยะเวลาของการหยุดเหล่านี้ซึ่งทำให้สามารถสื่อสารได้อย่างน่าเชื่อถือด้วยระยะเวลาต่ำสุด
อัลกอริทึมอินเทอร์เฟซอนุกรมทั้งหมดในคอมพิวเตอร์ดำเนินการโดยผู้ควบคุมพิเศษโดยไม่ต้องมีหน่วยประมวลผลกลาง ตัวหลังจะกำหนดค่าตัวควบคุมเหล่านี้สำหรับโหมดที่แน่นอนและอัปโหลดข้อมูลไปยังตัวควบคุมเพื่อส่งหรือรับข้อมูลที่ได้รับ
เมื่อทำงานกับโมเด็มอินเตอร์เฟส RS-232C ไม่เพียง แต่ให้บริการสายข้อมูล แต่ยังรวมถึงสัญญาณควบคุมเพิ่มเติม ในบทความนี้การพิจารณารายละเอียดไม่สมเหตุสมผลเนื่องจากมีเพียงสองตัวเท่านั้นที่ใช้ในวงจรอะแดปเตอร์ที่นำเสนอ นี้จะกล่าวถึงด้านล่างในคำอธิบายของแผนภาพวงจร
นอกจาก RS-232C แล้ว IRPS อินเตอร์เฟสแบบอนุกรม (Radial Interface ที่มีการสื่อสารแบบอนุกรม) นั้นแพร่หลายมาก ชื่อที่สองของเขาคือ Current Loop อินเตอร์เฟสนี้มีเหตุผลสอดคล้องกับ RS-232C: หลักการการส่งข้อมูลแบบอนุกรมเดียวกันและรูปแบบเดียวกัน: เริ่มต้นบิต, ไบต์ข้อมูล, พาริตี้บิตและบิตหยุด
ความแตกต่างจาก RS-232C เป็นเพียงการใช้งานจริงของช่องทางการสื่อสาร ระดับลอจิคัลจะไม่ถูกส่งโดยแรงดัน แต่โดยกระแส รูปแบบที่คล้ายกันช่วยให้คุณสามารถจัดการการสื่อสารระหว่างอุปกรณ์ที่อยู่ในระยะทางหนึ่งและครึ่งกิโลเมตร
นอกจากนี้ "ลูปปัจจุบัน" ซึ่งแตกต่างจาก RS-232C ไม่มีสัญญาณควบคุม: โดยค่าเริ่มต้นจะถือว่าพวกเขาทั้งหมดอยู่ในสถานะใช้งาน
ดังนั้นความต้านทานของสายสื่อสารที่ยาวนานจึงไม่ส่งผลกระทบต่อระดับสัญญาณ
รูปด้านล่างแสดงไดอะแกรมแบบง่ายมากของส่วนต่อประสานปัจจุบัน ดังที่ได้กล่าวไปแล้วสายนี้ใช้พลังงานจากแหล่งจ่ายกระแสซึ่งสามารถติดตั้งได้ทั้งในตัวส่งหรือในตัวรับซึ่งไม่สำคัญ
รูปที่ 2
หน่วยโลจิคัลในบรรทัดสอดคล้องกับกระแส 12 ... 20 mA และศูนย์โลจิคัลสอดคล้องกับการขาดกระแสแม่นยำมากขึ้นไม่เกิน 2 มิลลิแอมป์ ดังนั้นสเตจเอาท์พุทของเครื่องส่งสัญญาณ "current loop" จึงเป็นสวิตช์ทรานซิสเตอร์แบบง่าย ๆ
optocoupler ทรานซิสเตอร์จะใช้เป็นตัวรับซึ่งให้แยกไฟฟ้าจากสายการสื่อสาร เพื่อให้การสื่อสารเป็นแบบสองทางจำเป็นต้องมีการวนซ้ำกันอีกหนึ่งวง (สายสื่อสารสองเส้น) ถึงแม้ว่าวิธีการส่งสัญญาณนั้นเป็นที่รู้จักกันในสองทิศทางและบนคู่บิดหนึ่งคู่
ความสามารถในการซ่อมบำรุงของช่องทางการสื่อสารนั้นง่ายมากในการตรวจสอบว่าคุณรวมมิลลิวินาทีในช่องว่างของสายไฟทั้งสองสายหรือไม่ ในกรณีที่ไม่มีการส่งข้อมูลควรแสดงกระแสไฟฟ้าที่ใกล้ถึง 20 mA และหากมีการส่งข้อมูลสามารถสังเกตลูกศรชักเล็กน้อยได้ (หากความเร็วในการส่งไม่สูง แต่การส่งนั้นอยู่ในแพ็กเก็ต)
แผนภาพวงจรของอะแดปเตอร์ RS-232C -“ Current loop” แสดงในรูปที่ 3
รูปที่ 3 แผนผังไดอะแกรมของอะแดปเตอร์ RS-232C -“ วงวนปัจจุบัน” (คลิกที่ภาพจะเปิดไดอะแกรมในรูปแบบที่มีขนาดใหญ่ขึ้น)
ในสถานะเริ่มต้นสัญญาณ Rxd อยู่ในสถานะของหน่วยโลจิคัล (ดูรูปที่ 1) นั่นคือแรงดันไฟฟ้าที่เป็น -12 V ซึ่งนำไปสู่การเปิดตัวทรานซิสเตอร์ optocoupler DA2 และกับทรานซิสเตอร์ VT1 ซึ่งกระแส 20 mA ไหลผ่านตัวปรับกระแสไฟฟ้าในปัจจุบัน ตัวควบคุมคอนโทรลเลอร์ดังแสดงในรูปที่ 4 สำหรับ "ลูปปัจจุบัน" นี่คือสถานะของหน่วยโลจิคัล
เมื่อสัญญาณ Rxd รับค่าศูนย์ตรรกะ (แรงดัน + 12V) optocoupler DA2 จะปิดและทรานซิสเตอร์ VT1 เชื่อมต่อกับมันดังนั้นกระแสจะกลายเป็นศูนย์ซึ่งสอดคล้องกับข้อกำหนดของอินเตอร์เฟซ "กระแสวน" ทั้งหมด ด้วยวิธีนี้ข้อมูลอนุกรมจะถูกถ่ายโอนจากคอมพิวเตอร์ไปยังตัวควบคุม
ข้อมูลจากคอนโทรลเลอร์ไปยังคอมพิวเตอร์ถูกส่งผ่าน optocoupler DA1 และทรานซิสเตอร์ VT2: เมื่อลูปสายปัจจุบันอยู่ในสถานะของหน่วยโลจิคัล (ปัจจุบัน 20 mA) optocoupler จะเปิดทรานซิสเตอร์ VT2 และแรงดันไฟฟ้า -12 V จะปรากฏขึ้นที่อินพุตของเครื่องรับ RS-232C หน่วย สิ่งนี้สอดคล้องกับการหยุดชั่วคราวระหว่างการถ่ายโอนข้อมูล
เมื่อลูปปัจจุบันเป็นศูนย์ (โลจิคัลศูนย์) บนสายสื่อสารของลูปปัจจุบัน optocoupler DA1 และทรานซิสเตอร์ VT2 จะปิดที่อินพุต RxD จะมีแรงดัน + 12V - ซึ่งสอดคล้องกับระดับของศูนย์โลจิคัล
ในการรับแรงดันไฟฟ้าสองขั้วที่อินพุต RxD จะใช้สัญญาณ DTR Data Terminal Ready และ RTS Request to Send
สัญญาณเหล่านี้ออกแบบมาเพื่อทำงานกับโมเด็ม แต่ในกรณีนี้ใช้เป็นแหล่งพลังงานสำหรับสาย RxD ดังนั้นจึงไม่จำเป็นต้องใช้แหล่งสัญญาณเพิ่มเติม โดยทางโปรแกรมสัญญาณเหล่านี้จะถูกตั้งค่าในลักษณะนี้: DTR = + 12V, RTS = -12V แรงดันไฟฟ้าเหล่านี้แยกได้จากกันโดยไดโอด VD1 และ VD2
สำหรับการผลิตอะแดปเตอร์อิสระคุณจะต้องมีรายละเอียดดังต่อไปนี้
รายการของรายการ
DA, DA = 2xAOT128
R1 = 1x4.7K
R2, R4 = 2x100K
R3 = 1x200
R6, R7 = 2x680
R8, R9, R10 = 3x1M
VD1, VD2, VD3, VD4, VD5 = 5xKD522
VT1, VT2 = 2xKT814G
หากแทนที่จะใช้ออปโตคัปเปลอร์ AOT128 ในประเทศจะใช้การนำเข้า 4N35 ซึ่งมีแนวโน้มมากที่สุดในตลาดวิทยุปัจจุบันตัวต้านทาน R2, R4 ควรถูกตั้งค่าเป็น 820K ... 1M
การเชื่อมต่อของตัวควบคุมกับคอมพิวเตอร์แสดงในรูปที่ 4 (ตัวควบคุมกระแสคงที่อยู่ในตัวควบคุม)
รูปที่ 4
รูปที่ 5 แสดงบอร์ดอะแดปเตอร์ที่เสร็จแล้ว
รูปที่ 5 Dอะแดปเตอร์เมนบอร์ด
การเชื่อมต่อกับคอมพิวเตอร์นั้นใช้ตัวเชื่อมต่อชนิด DB-9 มาตรฐาน (ส่วนที่เป็นตัวเมีย) โดยใช้สายเคเบิลพอร์ตอนุกรมมาตรฐาน
บางครั้งสายเคเบิลลักษณะที่ปรากฏที่คล้ายกันจาก UPS (Uninterruptible) จะยังคงอยู่ มีสายไฟเฉพาะและไม่เหมาะสำหรับการเชื่อมต่ออะแดปเตอร์
สายอินเทอร์เฟซแบบวนปัจจุบันถูกเชื่อมต่อโดยใช้ที่หนีบขั้ว
Boris Aladyshkin
ดูได้ที่ e.imadeself.com
: