วิธีควบคุมวิทยุ DC Motors อย่างถูก: 5 ขั้นตอน
วิธีควบคุมวิทยุ DC Motors อย่างถูก: 5 ขั้นตอน
Anonim
วิธีการควบคุมวิทยุ DC Motors อย่างถูก
วิธีการควบคุมวิทยุ DC Motors อย่างถูก
วิธีการควบคุมวิทยุ DC Motors อย่างถูก
วิธีการควบคุมวิทยุ DC Motors อย่างถูก
วิธีการควบคุมวิทยุ DC Motors อย่างถูก
วิธีการควบคุมวิทยุ DC Motors อย่างถูก

สำหรับคนที่ไม่รู้ว่า "VEX" คืออะไร เป็นบริษัทที่จำหน่ายชิ้นส่วนและชุดอุปกรณ์หุ่นยนต์ พวกเขาขายตัวส่งและตัวรับ "VEX" บนไซต์ของพวกเขาในราคา $129.99 แต่คุณสามารถรับตัวส่งและตัวรับ "VEX" ได้ในราคาประมาณ $20 ใน "Ebay" และที่อื่นๆ อีกมากมาย

เครื่องส่งสัญญาณ "VEX" เป็นเครื่องส่ง FM 6 ช่องสัญญาณพร้อมจอยสติ๊ก 2 ตัวที่สามารถขึ้นและลงและจากด้านหนึ่งไปอีกด้านหนึ่งได้ ที่ด้านหลังของเครื่องส่งสัญญาณมี 4 ปุ่มสำหรับควบคุมช่องสัญญาณ 5 และช่อง 6 ตัวควบคุมเครื่องส่งสามารถตั้งค่าเป็นแบบถังหรือแบบอาร์เคด ตัวส่งสัญญาณมีคุณสมบัติอื่นๆ มากมาย ทำให้เป็นวิธีที่ถูกมากสำหรับเซอร์โวรีโมทคอนโทรล ปัญหาเดียวคือคุณสามารถควบคุมมอเตอร์เซอร์โวได้เท่านั้น และคุณจำเป็นต้องซื้อไมโครคอนโทรลเลอร์ "VEX" ราคาแพงที่ราคา 149.99 ดอลลาร์เพื่อดำเนินการดังกล่าว นั่นคือจนถึงตอนนี้!

ขั้นตอนที่ 1: มันทำงานอย่างไร

มันทำงานอย่างไร
มันทำงานอย่างไร

"ชิปอินเทอร์เฟซมอเตอร์" ราคาประหยัด ($14.95) สามารถซื้อได้ที่: https://robotics.scienceontheweb.net ชิปนี้สามารถถอดรหัสสัญญาณจากเครื่องรับ "VEX" เพื่อควบคุม H-bridge ของมอเตอร์ 8 ตัวและไดรเวอร์ 1 ตัว นอกจากนี้ยังสามารถรับคำสั่งจากชิปไมโครคอนโทรลเลอร์อื่นเพื่อควบคุมมอเตอร์ได้อีกด้วย ชิปอินเทอร์เฟซนี้ใช้พินเอาต์พุต 3 พินเพื่อควบคุม H-Bridge ของมอเตอร์ สองพินเพื่อควบคุมทิศทางของมอเตอร์และหนึ่งพินสำหรับควบคุมความเร็วของมอเตอร์โดยใช้ P. W. M. ชิปใช้อินพุตจากสองปุ่มบนช่อง 5 เพื่อควบคุมอินพุตจากจอยสติ๊กด้านซ้ายของเครื่องส่งสัญญาณ "VEX" เพื่อให้สามารถควบคุมมอเตอร์ได้ 6 ตัว ชิปใช้อินพุตจากอีก 2 ปุ่มบนช่อง 6 เพื่อล็อคเอาต์พุตสูงหรือต่ำบนพิน 14 ของชิปอินเทอร์เฟซสำหรับมอเตอร์ ชิปอินเทอร์เฟซสำหรับมอเตอร์มีคุณสมบัติดังต่อไปนี้ คุณลักษณะเหล่านี้อาจไม่ทำงานเนื่องจากเครื่องรับอาจรับสัญญาณได้จากทุกที่ เราไม่รับผิดชอบโดยตรงหรือโดยอ้อมจากการใช้ชิ้นส่วนเหล่านี้ คำเตือน! ห้ามใช้รีโมตบนหุ่นยนต์ที่อาจสร้างความเสียหายได้หากไม่สามารถควบคุมได้ หากหุ่นยนต์ของคุณอยู่นอกระยะส่งสัญญาณ ชิปอินเทอร์เฟซของมอเตอร์อาจปิดมอเตอร์และให้การควบคุมกับไมโครคอนโทรลเลอร์หากหุ่นยนต์ของคุณใช้งานอยู่ นี่อาจเป็นจริงเช่นกันหากคุณปิดตัวส่งสัญญาณ ชิปอินเทอร์เฟซของมอเตอร์ไม่ได้ใช้พอร์ตอนุกรมเพื่อสื่อสารกับไมโครคอนโทรลเลอร์อื่น ซึ่งหมายความว่าคุณสามารถใช้ชิปไมโครคอนโทรลเลอร์ราคาถูกมากเพื่อเป็นสมองของหุ่นยนต์ของคุณ การวางพิน 2 ในระดับต่ำจะทำให้มอเตอร์ทั้งหมดทำงานที่ระดับพลังงานเพียงครึ่งเดียวเมื่อใช้เครื่องส่งสัญญาณ

ขั้นตอนที่ 2: วิธีเชื่อมต่อตัวรับ VEX กับชิปอินเตอร์เฟส

วิธีเชื่อมต่อตัวรับ VEX กับชิปอินเตอร์เฟส
วิธีเชื่อมต่อตัวรับ VEX กับชิปอินเตอร์เฟส
วิธีเชื่อมต่อตัวรับ VEX กับชิปอินเตอร์เฟส
วิธีเชื่อมต่อตัวรับ VEX กับชิปอินเตอร์เฟส

มอเตอร์ รีเลย์ และอุปกรณ์จ่ายไฟจะทำให้เกิดสัญญาณรบกวนทางวิทยุ ดังนั้นให้เลือกจุดบนหุ่นยนต์ของคุณที่ตัวรับ "VEX" อยู่ห่างจากสิ่งเหล่านี้ ฉันติดตั้งของฉันบนเสายาว 43 นิ้วที่ติดกับฐานของหุ่นยนต์

ตัวรับสัญญาณ "VEX" มาพร้อมกับสายเคเบิลสีเหลือง เสียบสายเคเบิลเข้ากับเครื่องรับ "VEX" ปลายอีกด้านของสายเคเบิลเสียบเข้ากับแจ็คหูฟังโทรศัพท์ คุณต้องซื้อแจ็ค เพราะผมจะไม่รู้สีของสายไฟที่ออกมาจากแม่แรงของคุณ ฉันจะอ้างอิงสายเคเบิลสีเหลือง ถ้าดูสายเหลืองจะเห็นสายไฟ 4 เส้น คือ เหลือง เขียว แดง และขาว สายไฟสีเหลืองต่อสายไฟที่ +5 โวลต์ สายสีเขียวคือสัญญาณและต่อกับพิน 6 บนชิปอินเทอร์เฟซ สายสีแดงจะต่อสายดิน ไม่ใช้สายสีขาว คุณต้องต่อสายตัวต้านทานแบบดึงขึ้น 4.7 K จากพิน 6 บนชิปอินเตอร์เฟสไปยัง + 5 โวลต์ คุณจะต้องต่อสายไฟตัวเก็บประจุ 2200 ยูเอฟข้ามสายไฟใกล้กับตัวรับ "VEX" พิน 2 เป็นพินอินพุต จะต้องต่อสายและไม่ปล่อยลอย สามารถต่อสายเข้ากับ + 5 โวลต์หรือกราวด์ผ่านตัวต้านทาน 47 โอห์ม นอกจากนี้ยังสามารถต่อสายเข้ากับพิน 14 ได้อีกด้วย ตัวเลือกที่ 1: พิน 2 สูงจะให้กำลังเต็มที่กับมอเตอร์ ตัวเลือกที่ 2: พิน 2 ต่ำจะให้กำลังครึ่งหนึ่งของมอเตอร์ ตัวเลือก 3: พิน 2 ต่อสายกับพิน 14 เมื่อกดปุ่มบนสุดของช่อง 6 จะทำให้มอเตอร์มีกำลังเต็มช่วง เมื่อกดปุ่มด้านล่างของช่อง 6 จะทำให้มอเตอร์มีกำลังส่งเพียงครึ่งเดียว

ขั้นตอนที่ 3: วิธีเชื่อมต่อไมโครคอนโทรลเลอร์กับชิปอินเตอร์เฟส

วิธีเชื่อมต่อไมโครคอนโทรลเลอร์กับชิปอินเตอร์เฟส
วิธีเชื่อมต่อไมโครคอนโทรลเลอร์กับชิปอินเตอร์เฟส

ไมโครคอนโทรลเลอร์ของคุณหากคุณใช้ไมโครคอนโทรลเลอร์สามารถสื่อสารได้

ด้วยชิปอินเตอร์เฟสมากกว่า 3 สาย Pin 7 บนชิปอินเตอร์เฟสคืออินพุตสำหรับบิตข้อมูล เมื่อพินต่ำจะเป็นศูนย์ข้อมูลบิต เมื่อพินสูงจะเป็นบิตข้อมูลเดียว ไมโครคอนโทรลเลอร์ของคุณต้องส่งออกบิตข้อมูลก่อนพัลส์นาฬิกา บิตข้อมูลต้องมีความยาวอย่างน้อย 40 us Pin 16 บนชิปอินเตอร์เฟสเป็นอินพุตสำหรับบิตนาฬิกา ไมโครคอนโทรลเลอร์ของคุณต้องส่งสัญญาณพัลส์สูงอย่างน้อย.5 เรา พิน 5 บนชิปอินเตอร์เฟสเป็นพินเอาต์พุต เมื่อพินนี้สูงขึ้น เป็นการบอกให้ไมโครคอนโทรลเลอร์ของคุณรู้ว่าพร้อมที่จะรับคำสั่งถัดไป พินนี้จะลดลงหากชิปอินเตอร์เฟสได้รับสัญญาณจากเครื่องส่งสัญญาณ "VEX" พินนี้จะลดลงและอยู่ในระดับต่ำหากมีข้อผิดพลาดในการสื่อสารระหว่างไมโครคอนโทรลเลอร์และชิปอินเทอร์เฟซ พิน 4 เป็นพินเอาต์พุต หากมีข้อผิดพลาดในการสื่อสารระหว่างชิปอินเตอร์เฟสและไมโครคอนโทรลเลอร์ของคุณ พินนี้จะสูงและอยู่สูง ต้องทำการรีเซ็ตเพื่อล้างข้อผิดพลาดนี้

ขั้นตอนที่ 4: รายการคำสั่ง

มี 32 คำสั่งที่ชิปอินเตอร์เฟสเข้าใจ คำสั่งทั้งหมดมีความยาว 3 ไบต์หรือ 24 บิต รูปแบบของคำสั่งมีดังนี้

ไบต์ที่ 1 ที่ส่งจะเป็นไบต์คำสั่งซึ่งเป็นตัวเลขด้านซ้ายสุดในรายการด้านล่างเสมอ ไบต์ที่ 2 ที่ส่งอาจเป็นไบต์ PWM เป็นตัวเลขระหว่าง 0 ถึง 50 เมื่อเลข 0 ถูกส่งออกไป ชีพจรต่ำซึ่งหมายความว่ามอเตอร์จะปิด เมื่อส่งเลข 50 ให้ ป.ป.ช. ชีพจรสูงซึ่งหมายความว่ามอเตอร์จะเปิดเต็มกำลัง เมื่อส่งหมายเลข 25 มอเตอร์จะทำงานที่ครึ่งกำลัง ตามที่เห็นในรายการบางครั้งไบต์ที่ 2 เป็นเพียง 0 ซึ่งใช้สำหรับตัวยึดตำแหน่งเท่านั้น มันไม่มีผลกระทบต่อมอเตอร์ ไบต์ที่ 3 ที่ส่งอาจเป็นไบต์ PWM หรือหมายเลขตรวจสอบข้อผิดพลาด ตัวอย่าง: หากต้องการสั่งให้มอเตอร์ 1 ทำงานเต็มความเร็ว และให้มอเตอร์ 2 เดินหน้าด้วยความเร็วครึ่งหนึ่ง คำสั่งจะเป็น 1 50 25 หากต้องการสั่งให้มอเตอร์ 7 ถอยหลังด้วยกำลัง 10% คำสั่งจะเป็น 16 5 16 1 มอเตอร์ 1 & 2 ไปข้างหน้า, PWM #, PWM # (ไม่มีการตรวจสอบข้อผิดพลาด) 2 มอเตอร์ 1 & 2 ย้อนกลับ, PWM #, PWM # (ไม่มีการตรวจสอบข้อผิดพลาด) 3 มอเตอร์ 1 ไปข้างหน้า, PWM #, 3 4 มอเตอร์ 1 ย้อนกลับ, PWM #, 4 5 มอเตอร์ 2 ไปข้างหน้า, PWM #, 5 6 มอเตอร์ 2 ย้อนกลับ, PWM #, 6 7 มอเตอร์ 3 ไปข้างหน้า, PWM #, 7 8 มอเตอร์ 3 ย้อนกลับ, PWM #, 8 9 มอเตอร์ 4 ไปข้างหน้า, PWM #, 9 10 มอเตอร์ 4 ย้อนกลับ, PWM #, 10 11 มอเตอร์ 5 ไปข้างหน้า, PWM #, 11 12 มอเตอร์ 5 ย้อนกลับ, PWM #, 12 13 มอเตอร์ 6 ไปข้างหน้า, PWM #, 13 14 มอเตอร์ 6 ย้อนกลับ, PWM #, 14 15 มอเตอร์ 7 ไปข้างหน้า, PWM #, 15 16 มอเตอร์ 7 ย้อนกลับ, PWM #, 16 17 มอเตอร์ 8 ไปข้างหน้า, PWM #, 17 18 มอเตอร์ 8 ย้อนกลับ, PWM #, 18 19 ความเร็วมอเตอร์ทั้งหมด, PWM #, 19 20 ความเร็วมอเตอร์ 1 & 2, PWM #, PWM # (ไม่มีการตรวจสอบข้อผิดพลาด) 21 มอเตอร์ 1 & 2 หยุด, X, 21 (พินต่ำ) 22 มอเตอร์ 1 สต็อป, 0, 22 (พินต่ำ) 23 มอเตอร์ 2 สต็อป, 0, 23 (พินต่ำ) 24 มอเตอร์ 3 สต็อป, 0, 24 (พินต่ำ) 25 มอเตอร์ 4 สต็อป, 0, 25 (พินต่ำ) 26 มอเตอร์ 5 สต็อป, 0, 26 (พินต่ำ) 27 มอเตอร์ 6 สต็อป, 0, 27 (พินต่ำ) 28 มอเตอร์ 7 สต็อป, 0, 28 (พินต่ำ) 29 มอเตอร์ 8 สต็อป, 0, 29 (พินต่ำ) 30 โมทั้งหมด ทอร์หยุด 0, 30 (พินต่ำ) 31 พิน 14 สูง 0, 31 32 พิน 14 ต่ำ 0, 32

ขั้นตอนที่ 5: สรุปพิน

พินอินพุท

พิน 1 ถ้ามันเหลือน้อยก็จะหยุดพัก (MCLR) พิน 2 หากต่ำจะให้เอาต์พุตเพียงครึ่งหนึ่งของมอเตอร์ ตัวรับพิน 6 "VEX" พิน 7 คำสั่งและข้อมูลจากไมโครคอนโทรลเลอร์อื่น พิน 33 ข้อมูลขัดจังหวะ พิน 11 + 5 โวลต์ พิน 32 + 5 โวลต์ พิน 12 กราวด์ พิน 31 กราวด์ เอาต์พุต พิน พิน 34 PWM สำหรับมอเตอร์ 1 พิน 35 สูง เมื่อจอยสติ๊ก 1 เหลือ พิน 36 สูง เมื่อจอยสติ๊ก 1 อยู่ทางขวา พิน 37 P. W. M. สำหรับมอเตอร์ 2 ขา 38 สูงเมื่อจอยสติ๊ก 2 ขึ้น ขา 15 สูงเมื่อจอยสติ๊ก 2 ลดลง ขา 16 P. W. M. สำหรับมอเตอร์ 3 ขา 17 สูงเมื่อจอยสติ๊ก 3 ขึ้น ขา 18 สูงเมื่อจอยสติ๊ก 3 ลดลง ขา 23 P. W. M. สำหรับมอเตอร์ 4 พิน 24 สูง เมื่อจอยสติ๊ก 4 เหลือ พิน 25 สูง เมื่อจอยสติ๊ก 4 อยู่ทางขวา พิน 26 P. W. M. สำหรับมอเตอร์ 5 ขา 19 สูง เมื่อจอยสติ๊ก 3 ขึ้น และปุ่มบนสุด 5 คือ กดพิน 20 สูง เมื่อจอยสติ๊ก 3 ลง และปุ่มบนสุด 5 คือ กดพิน 21 P. W. M. สำหรับมอเตอร์ 6 ขา 22 สูง เมื่อจอยสติ๊ก 4 อยู่ทางซ้าย และปุ่มบนสุด 5 คือ กดพิน 27 สูง เมื่อจอยสติ๊ก 4 อยู่ทางขวา และปุ่มบนสุด 5 คือ ให้กดพิน 28 P. W. M. สำหรับมอเตอร์ 7 ขา 29 สูงเมื่อจอยสติ๊ก 3 ขึ้นและปุ่มล่าง 5 คือกด Pin 30 High เมื่อจอยสติ๊ก 3 ลดลงและปุ่มล่าง 5 คือกด Pin 8 P. W. M. สำหรับมอเตอร์ 8 ขา 9 สูง เมื่อจอยสติ๊ก 4 อยู่ทางซ้าย และปุ่มล่าง 5 คือ กดพิน 10 สูง เมื่อจอยสติ๊ก 4 อยู่ทางขวา และปุ่มล่าง 5 ถูกกด ขา 14 อยู่สูงเมื่อกดปุ่มบนสุด 6; ต่ำลงเมื่อปุ่มล่าง 6 ถูกกด Pin 5 บอกไมโครคอนโทรลเลอร์อื่นว่าสามารถส่งคำสั่งถัดไปได้ Pin 4 สูงขึ้นหากตรวจพบข้อผิดพลาดของคำสั่ง พินอื่น ๆ ทั้งหมดไม่ได้ใช้ ไม่จำเป็นต้องดึงหมุดเหล่านี้