BLDC Motor Control กับ Arduino, Salvaged HD Motor และ Hall Sensors
มุมมอง: 0 ผู้แต่ง: ไซต์บรรณาธิการเผยแพร่เวลา: 2020-09-02 Origin: เว็บไซต์
สอบถาม
ทุกวันนี้ผู้ที่ชื่นชอบมีความสนใจในการควบคุม DC (BLDC) (BLDC) อย่างมาก
เมื่อเทียบกับมอเตอร์ DC แบบดั้งเดิมประสิทธิภาพของมอเตอร์ได้ดีขึ้นประสิทธิภาพการใช้พลังงานก็ดีขึ้นเช่นกัน แต่ก็ยากที่จะใช้ มีผลิตภัณฑ์ นอก
ชั้นวางไว้มากมายเพื่อจุดประสงค์นี้
ตัวอย่างเช่นมีตัวควบคุม BLDCS ขนาดเล็กจำนวนมากที่ทำงานได้ดีสำหรับเครื่องบิน RC
สำหรับผู้ที่ต้องการดูการควบคุมของ BLDC ในเชิงลึกมากขึ้นนอกจากนี้ยังมีไมโครคอนโทรลเลอร์ที่แตกต่างกันและฮาร์ดแวร์อิเล็กทรอนิกส์อื่น ๆ สำหรับผู้ใช้อุตสาหกรรมซึ่งมักจะมีเอกสารที่ดีมาก
จนถึงตอนนี้ฉันยังไม่พบคำอธิบายที่ครอบคลุมเกี่ยวกับวิธีการใช้ Arduino Micro-Controller สำหรับการควบคุม BLDC
นอกจากนี้หากคุณสนใจที่จะทำการเบรกใหม่หรือใช้ BLDC สำหรับการผลิตพลังงานฉันไม่พบผลิตภัณฑ์จำนวนมากที่เหมาะสมสำหรับใช้กับมอเตอร์ขนาดเล็กและฉันไม่พบวิธีการควบคุมเครื่องกำเนิดไฟฟ้า 3 เฟส
โครงสร้างนี้เดิมอยู่ในเรื่องราวเกี่ยวกับ
การคำนวณเวลาจริงฉันยังคงทำเช่นนั้นหลังจากจบหลักสูตร
แนวคิดของโครงการคือการแสดงแบบจำลองสัดส่วนของรถไฮบริดที่มีการจัดเก็บพลังงานมู่เล่และการเบรกแบบปฏิรูป
มอเตอร์ที่ใช้ในโครงการคือเขตการศึกษาขนาดเล็กที่ทำความสะอาดจากฮาร์ดไดรฟ์คอมพิวเตอร์ที่เสียหาย
คู่มือนี้อธิบายถึงวิธีการใช้ Arduino micro-controller และ Hall-
ส่งผลกระทบต่อเซ็นเซอร์ตำแหน่งในการขับขี่และโหมดเบรกแบบปฏิรูป
โปรดทราบว่าการเยี่ยมชม Oscillisoft นั้นมีประโยชน์มากหากไม่จำเป็นต้องทำโครงการนี้ให้เสร็จ
หากคุณไม่สามารถเข้าถึงขอบเขตได้ฉันได้เพิ่มคำแนะนำเกี่ยวกับวิธีการทำโดยไม่ต้องใช้ขอบเขต (ขั้นตอนที่ 5)
สิ่งหนึ่งที่โครงการนี้ไม่ควรรวมอยู่ในตัวควบคุมมอเตอร์จริง ๆ คือฟังก์ชั่นความปลอดภัยใด ๆ เช่นการป้องกันในปัจจุบัน
ในความเป็นจริงสิ่งที่แย่ที่สุดคือคุณเผาไหม้มอเตอร์ HD
อย่างไรก็ตามการใช้การป้องกันปัจจุบันด้วยฮาร์ดแวร์ปัจจุบันไม่ใช่เรื่องยากและบางทีฉันอาจจะทำเช่นนั้นในบางจุด
หากคุณพยายามควบคุมมอเตอร์ขนาดใหญ่โปรดเพิ่มการป้องกันในปัจจุบันเพื่อปกป้องมอเตอร์และความปลอดภัยของคุณเอง
ฉันต้องการลองใช้คอนโทรลเลอร์นี้กับมอเตอร์ขนาดใหญ่ที่สามารถทำงานได้บ้าง \ 'จริง' แต่ฉันยังไม่มีอะไรที่ถูกต้อง
ฉันสังเกตเห็นว่า eBay ขายรถ 86 W ในราคาประมาณ $ 40
ดูเหมือนเป็นผู้สมัครที่ดี
นอกจากนี้ยังมีเว็บไซต์ RC ชื่อ \ 'GoBrushless \' ที่ขายชุดชุดที่ประกอบ BLDC ของตัวเอง
สิ่งเหล่านี้ไม่แพงเกินไปและคุ้มค่ากับประสบการณ์ในการสร้าง
โปรดทราบว่าไม่มีเซ็นเซอร์ฮอลล์สำหรับมอเตอร์ในเว็บไซต์นี้ วววววววววววววววว
การเขียนโครงสร้างนี้เป็นงานที่ยิ่งใหญ่
ฉันหวังว่าคุณจะพบว่ามีประโยชน์โปรดแสดงความคิดเห็นและคำแนะนำของคุณ
Digital Multimeter (DMM)-
หาก DMM ของคุณมีออสซิลโลสโคปมิเตอร์ความถี่ (
ดีกว่าที่จะมีอย่างน้อย 2 ช่อง)
ไดรเวอร์ T8 Torx (
คุณต้องการหนึ่งในนั้นเพื่อเปิดฮาร์ดไดรฟ์ใด ๆ )
มีร้านฮาร์ดแวร์ที่ดี
การประชุมเชิงปฏิบัติการของเครื่องจักรและต้นแบบอย่างรวดเร็ว (
สิ่งเหล่านี้มีประโยชน์มาก แต่ฉันคิดว่าโครงการนี้สามารถทำได้หากไม่มีพวกเขา)
วัสดุ BLDC มอเตอร์วงแหวนแม่เหล็กจากคอมพิวเตอร์ฮาร์ดดิสก์ (
ครึ่งหนึ่งของมอเตอร์)
จากฮาร์ดไดรฟ์ไดรฟ์อีกตัว (3-6)
มีมอเตอร์ขนาดเล็กตัวที่สองในดิสก์เงินบนฮาร์ดดิสก์ (DC แปรงตกลง)
แถบยางหรือ (ควรจะเป็น
ที่จับของสายไฟ POTENIOMETER100 K OHMST MICRO CIRCUIT L6234 สามเฟสมอเตอร์ไดรเวอร์ IC สอง 100 ตัวเก็บประจุ UF หนึ่งตัวตัวเก็บประจุ 10 NF หนึ่งตัวตัวเก็บประจุ 220 NF หนึ่งตัวเก็บประจุ 1 UF ตัวเก็บ
ประจุ 100 UF ตัวเก็บประจุสาม
ตัว วงจรเซ็นเซอร์ที่ฉันได้แสดงในคู่มือนี้ (
มันถูกควบคุมโดยใช้การเหนี่ยวนำที่มีศักยภาพกลับ)
ข้อมูลจำเพาะและข้อมูลการจัดซื้อสามารถพบได้ในสองลิงก์นี้: หากคุณกำลังจะทำโครงการนี้ฉันขอแนะนำให้คุณใช้เวลาในการทำความเข้าใจอย่างถ่องแท้ว่า BLDC ทำงานและควบคุมได้อย่างไร
มีการอ้างอิงจำนวนมากออนไลน์ (
ดูคำแนะนำด้านล่าง)
อย่างไรก็ตามฉันรวมแผนภูมิและตารางในโครงการของฉันที่จะช่วยให้คุณเข้าใจ
นี่คือรายการของแนวคิดที่ฉันคิดว่าสำคัญที่สุดในการทำความเข้าใจโครงการนี้: ทรานซิสเตอร์ MOSFET 3 เฟสครึ่งสะพาน 6-
ขั้นตอนการลดลงของประโยค
พัลส์ความกว้างของมอเตอร์เฟสมอเตอร์ (PWM) Hall-
AVR443
3
microchip เซ็นเซอร์ Flying Star Hall ซึ่งเป็นวิดีโอที่ดีในการทำความสะอาดมอเตอร์ฮาร์ดไดรฟ์ แต่ผู้เขียนดูเหมือนจะใช้มอเตอร์เป็นมอเตอร์เหยียบและเป็นมอเตอร์ก้าว หน้าเว็บอ้างอิงที่เฉพาะเจาะจงมากขึ้นสำหรับ BLDC บน L6234 มอเตอร์ไดรฟ์ IC รวมถึงแผ่นข้อมูลบันทึกแอปพลิเคชันและข้อมูลการซื้อ
ตัวอย่างฟรีสำหรับ PM Motor Drive สำหรับแอพพลิเคชั่นรถยนต์ไฟฟ้าไฮบริด
นี่เป็นบทความเดียวที่ฉันพบว่าอธิบายลำดับของการเปลี่ยนแปลงขั้นตอนการเบรกแบบปฏิรูป
บทความนี้การเบรกใหม่ในยานพาหนะไฟฟ้ามีประโยชน์ฉันยืมตัวเลขสองสามตัว แต่ฉันคิดว่ามันอธิบายอย่างไม่ถูกต้องว่าการฟื้นฟูทำงานอย่างไร
ฉันทำโครงการนี้ด้วยมอเตอร์ดิสก์ไดรฟ์รีไซเคิลเพราะมันง่ายที่จะผ่านและฉันชอบใช้มอเตอร์แรงดันไฟฟ้าต่ำขนาดเล็กเพื่อเรียนรู้สายที่ควบคุมโดย BLDC และไม่ทำให้เกิดปัญหาด้านความปลอดภัยใด ๆ
นอกจากนี้การกำหนดค่าแม่เหล็กของเซ็นเซอร์ฮอลล์นั้นง่ายมากโดยใช้วงแหวนแม่เหล็ก (โรเตอร์)
จากมอเตอร์ที่สองเหล่านี้ (ดูขั้นตอนที่ 4)
หากคุณไม่ต้องการไปที่ความยุ่งยากทั้งหมดของการติดตั้งและสอบเทียบเซ็นเซอร์ฮอลล์ (ขั้นตอนที่ 5-7)
ฉันรู้ว่ามีอย่างน้อยก็มีมอเตอร์ไดรฟ์ CD/DVD บางตัวที่สร้างขึ้นในห้องโถง
เพื่อให้ความเฉื่อยหมุนไปที่มอเตอร์และให้โหลดเล็กน้อยฉันใส่ฮาร์ดไดรฟ์ 5 ตัวบนมอเตอร์ติดกาวเบา ๆ พร้อมกาวที่แข็งแรงเล็กน้อยและติดกาวกับมอเตอร์ (
ทำให้มู่เล่ในโครงการดั้งเดิมของฉัน)
หากคุณกำลังจะถอดมอเตอร์ออกจากฮาร์ดไดรฟ์คุณต้องใช้ไดรฟ์ T8 Torx เพื่อคลายเกลียวที่อยู่อาศัย (
โดยปกติจะมีสกรูสองตัวที่ซ่อนอยู่ด้านหลังแท่งในฉลาก Centeron)
และสกรูภายในที่ยึดมอเตอร์ไว้
คุณต้องลบตัวอ่านหัว (
ผู้บริหารวงกลมเสียง)
ด้วยวิธีนี้คุณสามารถนำดิสก์หน่วยความจำออกไปถึงมอเตอร์
นอกจากนี้คุณจะต้องใช้มอเตอร์ฮาร์ดไดรฟ์ตัวที่สองเพื่อถอดโรเตอร์ออกจากมอเตอร์นั้น (
มีแม่เหล็กอยู่ด้านใน)
เพื่อที่จะแยกมอเตอร์ออกจากกันฉันคว้าใบพัด (บนสุด)
ของมอเตอร์และแงะมันบนสเตเตอร์ (ด้านล่าง)
ไขควงทั้งสองอยู่ห่างกัน 180 องศา
ไม่ใช่เรื่องง่ายที่จะถือมอเตอร์ไว้ในคู่ที่แน่นพอโดยไม่ต้องเสียรูป
คุณอาจต้องการสร้าง V-
บล็อกที่ใช้เพื่อจุดประสงค์นี้
ฉันเจาะรูในวงแหวนแม่เหล็กบนเครื่องกลึงเพื่อให้พอดีกับความสะดวกสบายที่ด้านบนของมอเตอร์
หากคุณไม่สามารถใช้เครื่องกลึงได้คุณสามารถแก้ไขใบพัดคว่ำบนมอเตอร์ด้วยกาวที่แข็งแรง
รูปภาพ 2 และ 3 ด้านล่างแสดงการตกแต่งภายในของหนึ่งในมอเตอร์ที่ฉันถอดประกอบ
ในครึ่งแรกที่นั่น (โรเตอร์) คือ 8 เสา (
แม่เหล็กห่อด้วยพลาสติก)
ในช่วงครึ่งหลัง (สเตเตอร์)
มี 12 ช่อง (ขดลวด)
แต่ละเฟสมอเตอร์ทั้งสามมี 4 ช่องในอนุกรม
มอเตอร์ HD บางตัวมีสองติดต่อที่ด้านล่างติดต่อหนึ่งต่อเฟสและอีกอันคือการแตะกลางของมอเตอร์ (
ที่มีสามขั้นตอนตรง)
ในโครงการนี้ไม่จำเป็นต้องมีการแตะตรงกลาง แต่สามารถมีประโยชน์ในการควบคุมที่ปราศจากเซ็นเซอร์ (
ฉันหวังว่าจะปล่อยโน้ตเกี่ยวกับการควบคุมแบบปราศจากเซ็นเซอร์ในวันเดียว)
หากมอเตอร์ของคุณมีสี่ติดต่อคุณสามารถระบุเฟสด้วยโอห์มิเตอร์
ความต้านทานระหว่างก๊อกน้ำกลางและเฟสคือครึ่งหนึ่งของความต้านทานระหว่างสองเฟสใด ๆ
วรรณกรรมส่วนใหญ่เกี่ยวกับ BLDC Motors เกี่ยวข้องกับผู้ที่มีรูปคลื่นที่มีศักยภาพด้านหลังรูปบันได แต่มอเตอร์ฮาร์ดไดรฟ์ดูเหมือนจะมีศักยภาพด้านหลังที่ดูเหมือนไซน์ (ดูด้านล่าง)
เท่าที่ฉันรู้การขับมอเตอร์คลื่นไซน์ด้วยคลื่นไซน์ PWM นั้นทำงานได้ดีแม้ว่าประสิทธิภาพอาจลดลงบ้าง
เช่นเดียวกับมอเตอร์ BLDC ทั้งหมดอันนี้ประกอบด้วย
สะพานสามเฟสครึ่งหนึ่ง (
ดูรูปภาพที่ 2 ด้านล่าง)
ฉันใช้ IC ที่ทำโดย St Micro (L6234)
สำหรับสะพานหรือที่เรียกว่า Motor Driver
การเชื่อมต่อไฟฟ้าของ L6234 แสดงในขั้นตอนที่ 8
ภาพที่สามด้านล่างแสดงแผนภาพแผนผังของไดรเวอร์มอเตอร์และเฟสมอเตอร์ทั้งสาม
เพื่อให้มอเตอร์ทำงานตามเข็มนาฬิกาสวิตช์จะทำตามลำดับต่อไปนี้ (
ตัวอักษรตัวแรกคือทรานซิสเตอร์ด้านบนและตัวอักษรตัวที่สองคือทรานซิสเตอร์ที่ต่ำกว่า)
: ขั้นตอนที่ 1 2 3 4 5 6 ตามเข็มนาฬิกา: CB, AC, BC, BA, Ca Counter Wiskes: BC, BA, CA, CB, AC,
AC มอเตอร์เหล่านี้
ดังนั้นความเร็วในการหมุนของมอเตอร์แต่ละตัวจึงเกิดขึ้นสี่ครั้ง
ทั้งสองลำดับดูเหมือนจะเหมือนกัน แต่พวกเขาไม่เหมือนกันเพราะสำหรับ
ลำดับ 6 ขั้นตอนสำหรับ CW ทิศทางปัจจุบันผ่านเฟสคือทิศทางเดียวและสำหรับ CCW ทิศทางปัจจุบันอยู่ตรงข้าม
คุณสามารถเห็นสิ่งนี้ด้วยตัวเองโดยใช้แรงดันไฟฟ้าของแบตเตอรี่หรือแหล่งจ่ายไฟกับเฟสมอเตอร์
หากคุณใช้แรงดันไฟฟ้ามอเตอร์จะเคลื่อนที่เล็กน้อยในทิศทางเดียวและหยุด
หากคุณสามารถเปลี่ยนแรงดันไฟฟ้าได้อย่างรวดเร็วในเฟสในลำดับใดลำดับข้างต้นคุณสามารถหมุนมอเตอร์ด้วยตนเองได้
ทรานซิสเตอร์และไมโครคอนโทรลเลอร์สมบูรณ์สวิตช์เหล่านี้ทั้งหมดอย่างรวดเร็วเปลี่ยนหลายร้อยครั้งต่อวินาทีเมื่อมอเตอร์ทำงานด้วยความเร็วสูง
นอกจากนี้โปรดทราบว่าหากแรงดันไฟฟ้าถูกนำไปใช้กับทั้งสองเฟสมอเตอร์จะเคลื่อนที่เล็กน้อยแล้วหยุด
นี่เป็นเพราะแรงบิดเป็นศูนย์
คุณสามารถเห็นสิ่งนี้ได้ในภาพที่สี่ด้านล่างซึ่งแสดงศักยภาพด้านหลังของเฟสมอเตอร์คู่หนึ่ง
นี่คือคลื่นไซน์
เมื่อคลื่นผ่าน X-
เพลาแรงบิดที่ได้จากขั้นตอนนี้เป็นศูนย์ ใน
ลำดับการเปลี่ยนเฟส Six- ขั้นตอนที่ไม่เคยเกิดขึ้น
ก่อนที่แรงบิดในเฟสใดระยะหนึ่งจะต่ำลงพลังงานจะถูกสลับไปใช้การรวมกันเฟสอื่น
มอเตอร์ BLDC ขนาดใหญ่มักจะผลิตโดยเซ็นเซอร์ฮอลล์ภายในมอเตอร์
หากคุณมีมอเตอร์เช่นนี้คุณสามารถข้ามขั้นตอนนี้ได้
นอกจากนี้ฉันรู้ว่ามีมอเตอร์ไดรฟ์ซีดี/ดีวีดีอย่างน้อยบางตัวที่สร้างขึ้นในเซ็นเซอร์ฮอลล์แล้ว
เมื่อมอเตอร์หมุนเซ็นเซอร์ฮอลล์สามตัวจะใช้สำหรับการตรวจจับตำแหน่งดังนั้นการเปลี่ยนเฟสจะดำเนินการในขณะที่เหมาะสม
มอเตอร์ HD ของฉันทำงานได้สูงถึง 9000 รอบต่อนาที (150 Hz)
เนื่องจากมีการเปลี่ยนแปลง 24 ล้อที่ 9000 รอบต่อนาทีเครื่องจะเปลี่ยนทุก 280 ไมโครวินาที
ตัวควบคุมไมโคร Arduino ทำงานที่ 16 MHz ดังนั้นแต่ละรอบนาฬิกาคือ 0 06 ไมโครวินาที
ฉันไม่ทราบว่าต้องมีรอบนาฬิกากี่รอบในการลดประโยค แต่ถึงแม้ว่าจะต้องมีรอบนาฬิกา 100 รอบนั่นคือมันต้องใช้ 5 ไมโครวินาทีสำหรับการลดลงของประโยคแต่ละครั้ง
HD Motors ไม่มีเซ็นเซอร์ Hall ดังนั้นจึงจำเป็นต้องติดตั้งที่ด้านนอกของมอเตอร์
เซ็นเซอร์จะต้องได้รับการแก้ไขด้วยความเคารพต่อการหมุนของมอเตอร์และสัมผัสกับชุดของเสาที่สอดคล้องกับการหมุนของมอเตอร์
วิธีแก้ปัญหาของฉันคือการถอดแหวนแม่เหล็กออกจากมอเตอร์เดียวกันและติดตั้งกลับหัวลงบนมอเตอร์เพื่อควบคุม
จากนั้นฉันก็ติดตั้งเซ็นเซอร์ฮอลล์สามตัวเหนือวงแหวนแม่เหล็กนี้ห่างจากกัน 30 องศาบนเพลามอเตอร์ (
การหมุนมอเตอร์ไฟฟ้า 120 องศา)
ผู้ถือเซ็นเซอร์ฮอลล์ของฉันประกอบด้วยตัวยึดอย่างง่ายประกอบด้วยชิ้นส่วนอลูมิเนียมสามชิ้นที่ฉันประมวลผลโดยฉันและชิ้นส่วนพลาสติกสามชิ้นที่ทำบนต้นแบบที่รวดเร็ว
หากคุณไม่มีเครื่องมือเหล่านี้ไม่ควรหาวิธีอื่นในการระบุตำแหน่ง
การสร้างวงเล็บสำหรับเซ็นเซอร์ฮอลล์จะท้าทายมากขึ้น
นี่เป็นวิธีที่เป็นไปได้ในการทำงาน: 1.
ค้นหาถาดพลาสติกที่มีขนาดที่เหมาะสมและคุณสามารถใช้ Epoxy เซ็นเซอร์ฮอลล์ได้อย่างระมัดระวัง 2.
เทมเพลตถูกพิมพ์ลงบนกระดาษซึ่งมีวงกลมเดียวกับรัศมีวงแหวนแม่เหล็กและเครื่องหมายทั้งสามนั้นอยู่ห่างกัน 15 องศา 3
กาวเทมเพลตไปยังดิสก์แล้วใช้เทมเพลตเป็นแนวทางในการวางอีพ็อกซี่เซ็นเซอร์ฮอลล์อย่างระมัดระวัง
ตอนนี้เซ็นเซอร์ฮอลล์ได้รับการติดตั้งบนมอเตอร์เชื่อมต่อเข้ากับวงจรที่แสดงด้านล่างและทดสอบโดยใช้ DMM หรือออสซิลโลสโคปเพื่อให้แน่ใจว่าเอาต์พุตจะสูงขึ้นเรื่อย ๆ เมื่อมอเตอร์หมุน
ฉันเรียกใช้เซ็นเซอร์เหล่านี้ภายใต้ 5 V โดยใช้เอาต์พุต 5 V ของ Arduino s
เซ็นเซอร์ฮอลล์มีผลผลิตสูงหรือต่ำ (1 หรือ 0)
ขึ้นอยู่กับว่าพวกเขารู้สึกว่าแอนตาร์กติกหรืออาร์กติก
เนื่องจากพวกมันอยู่ห่างกัน 15 องศาแม่เหล็กจึงหมุนไปข้างใต้และเปลี่ยนขั้วทุก 45 องศาเซ็นเซอร์ทั้งสามนี้จะไม่สูงหรือต่ำในเวลาเดียวกัน
เมื่อมอเตอร์หมุนเอาต์พุตเซ็นเซอร์คือ 6-
รูปแบบขั้นตอนที่แสดงในตารางต่อไปนี้
เซ็นเซอร์จะต้องจัดแนวกับการเคลื่อนที่ของมอเตอร์เพื่อให้เซ็นเซอร์หนึ่งในสามเปลี่ยนอย่างแม่นยำที่ตำแหน่งการเปลี่ยนเฟสมอเตอร์
ในกรณีนี้ขอบที่เพิ่มขึ้นของเซ็นเซอร์ฮอลล์แรก (H1)
ควรสอดคล้องกับการเปิดการรวมกันของ C (สูง) และ B (ต่ำ)
สิ่งนี้เทียบเท่ากับการเปิดทรานซิสเตอร์ 3 และ 5 ในวงจรบริดจ์
ฉันจัดตำแหน่งเซ็นเซอร์ด้วยแม่เหล็กด้วยออสซิลโลสโคป
ในการทำเช่นนี้ฉันต้องใช้ขอบเขตสามช่องทาง
ฉันหมุนมอเตอร์โดยเชื่อมต่อกับสายพานของมอเตอร์ที่สองและวัดศักยภาพด้านหลังระหว่างการรวมกันสองเฟส (
A และ B, A และ C)
นี่คือสองไซน์
เช่นเดียวกับคลื่นในภาพด้านล่าง
จากนั้นดูสัญญาณของเซ็นเซอร์ฮอลล์ 2 บนช่อง 3 ของออสซิลโลสโคป
ตัวยึดเซ็นเซอร์ฮอลล์จะถูกเปิดจนกว่าขอบที่เพิ่มขึ้นของเซ็นเซอร์ฮอลล์จะอยู่ในแนวเดียวกันกับจุดที่ควรทำการเปลี่ยนเฟส (ดูด้านล่าง)
ตอนนี้ฉันรู้ว่ามีเพียงสองช่องทางในการสอบเทียบเดียวกัน
หาก BEMF ของการรวมกันของเฟส B-
โดยใช้ C ขอบที่เพิ่มขึ้นของ H2 จะเกี่ยวข้องกับเส้นโค้ง BC
เหตุผลที่การเปลี่ยนแปลงเฟสควรดำเนินการที่นี่คือการรักษาแรงบิดของมอเตอร์ให้สูงที่สุดเท่าที่จะทำได้
ศักยภาพด้านหลังเป็นสัดส่วนกับแรงบิดและคุณจะสังเกตเห็นว่าการเปลี่ยนแปลงแต่ละเฟสเกิดขึ้นเมื่อศักยภาพด้านหลังผ่านใต้เส้นโค้งขั้นตอนถัดไป
ดังนั้นแรงบิดที่แท้จริงประกอบด้วยส่วนสูงสุดของการรวมกันของแต่ละเฟส
หากคุณไม่สามารถเข้าถึงขอบเขตได้นี่คือความคิดของฉันในการจัดตำแหน่ง
นี่เป็นแบบฝึกหัดที่น่าสนใจสำหรับทุกคนที่ต้องการทราบว่า BLDC Motor ทำงานอย่างไร
หากเฟสมอเตอร์ A เชื่อมต่อ (บวก) และ b (ลบ)
กับแหล่งจ่ายไฟและเปิดแหล่งจ่ายไฟมอเตอร์จะหมุนเล็กน้อยและหยุด
จากนั้นหากตะกั่วพลังงานเชิงลบถูกย้ายไปยังเฟส C และเปิดเครื่องมอเตอร์จะหมุนต่อไปและหยุด
ส่วนถัดไปของลำดับคือการย้ายตะกั่วบวกไปยังเฟส B ฯลฯ
เมื่อคุณทำสิ่งนี้มอเตอร์จะหยุดที่แรงบิดเป็นศูนย์ซึ่งสอดคล้องกับที่เดียวที่แผนภูมิผ่านแกน x บนแผนภูมิ
โปรดทราบว่าจุดศูนย์ของชุดค่าผสมเฟสที่สามสอดคล้องกับตำแหน่งการเปลี่ยนเฟสของชุดค่าผสมสองชุดแรก
ดังนั้นตำแหน่งแรงบิดเป็นศูนย์ของ B-
การรวมกันของ C คือที่ที่คุณต้องการจัดตำแหน่งขอบที่เพิ่มขึ้นของ H2
ทำเครื่องหมายตำแหน่งนี้ด้วยเครื่องหมายที่ดีหรือใบมีดที่คมชัดจากนั้นปรับตัวยึดเซ็นเซอร์ฮอลล์โดยใช้ DMM จนกว่าเอาต์พุตของ H2 จะสูงขึ้นอย่างแน่นอนบนเครื่องหมายนี้
แม้ว่าคุณจะเบี่ยงเบนไปเล็กน้อยจากตารางเรียนของคุณมอเตอร์ก็ควรทำงานได้ดี
เฟสมอเตอร์ทั้งสามจะได้รับพลังงานจากไดรเวอร์มอเตอร์สามเฟส L6234
ฉันพบว่านี่เป็นผลิตภัณฑ์ที่ดีที่สามารถทดสอบเวลาได้
มีหลายวิธีในการทอดส่วนประกอบของคุณโดยไม่ตั้งใจเมื่อใช้พลังงานอิเล็กทรอนิกส์ฉันไม่ใช่วิศวกรไฟฟ้าและฉันไม่ทราบเสมอว่าเกิดอะไรขึ้น
ในโปรแกรมโรงเรียนของฉันเราทำ
ผลผลิตครึ่งสะพานครึ่งเฟสของเราเองจากทรานซิสเตอร์ 6 MOSFET และ 6 ไดโอด
เราใช้สิ่งนี้กับ HIP4086 ของ Intersil คนขับรถคนอื่น ๆ แต่เรามีปัญหามากมายกับการตั้งค่านี้
เราเผาทรานซิสเตอร์และชิปจำนวนมาก
ฉันเรียกใช้ L6234 (
ดังนั้นมอเตอร์) ที่ 12V
L6234 มีชุดอินพุตที่ผิดปกติเพื่อควบคุมครึ่งสะพานของทรานซิสเตอร์ 6 ตัว
ไม่ใช่ทุกทรานซิสเตอร์ที่มีอินพุต แต่
อินพุตเปิดใช้งาน (EN) สำหรับแต่ละขั้นตอนสามขั้นตอนจากนั้นอินพุตอื่น (ใน)
เลือกทรานซิสเตอร์ที่ในเฟสเปิด (บนหรือล่าง)
ตัวอย่างเช่นเปิดทรานซิสเตอร์ 1 (บน) และ 6 (ต่ำกว่า)
ทั้ง EN1 และ EN3 สูง (
EN2 ต่ำเพื่อให้ระยะปิด) ใน
ระดับสูง 1, in3 ต่ำ
สิ่งนี้ทำให้เฟสรวมกัน
ในขณะที่บันทึกแอปพลิเคชัน L6234 แนะนำให้ใช้ PWM ที่ใช้ในการควบคุมความเร็วของมอเตอร์ไปที่พินในพินฉันตัดสินใจที่จะทำบนพินเอนเพราะในเวลานั้นฉันคิดว่ามันจะเป็น \ 'แปลก ๆ
' พวกเขาผ่าน
ของ
ฉัน
ไฟฟ้า
กระแส เล็กเล็กน้อยดังนั้นสำหรับรุ่นที่ใหญ่กว่าโปรดดูเอกสารสำหรับ L6234
หมายเหตุ: Mike Anton สร้าง PCB สำหรับ L6234 ซึ่งจะ (ฉันเชื่อว่า)
แทนที่แทร็กนี้และช่วยให้คุณประหยัดงานในการประกอบ
ดูลิงค์เหล่านี้สำหรับข้อมูลจำเพาะและข้อมูลการซื้อ: ฉันไม่พบมากเกี่ยวกับ 3-
ฉันจะอธิบายความเข้าใจของฉันเกี่ยวกับวิธีการทำงาน
โปรดทราบว่าฉันไม่ใช่วิศวกรไฟฟ้าและเราจะขอบคุณการแก้ไขคำอธิบายของฉัน
เมื่อขับรถระบบควบคุมจะส่งกระแสไฟฟ้าออกเป็นสามเฟสมอเตอร์ในลักษณะที่เพิ่มแรงบิดสูงสุด
ในการเบรกใหม่ระบบควบคุมยังเพิ่มแรงบิดสูงสุด แต่คราวนี้มันเป็นแรงบิดเชิงลบที่ทำให้มอเตอร์ช้าลงในขณะที่ส่งกระแสกลับไปยังแบตเตอรี่
วิธีการเบรกที่ฉันใช้มาจากกระดาษจากห้องปฏิบัติการแห่งชาติ Oakridge ในสหรัฐอเมริกา S. Govt
ห้องปฏิบัติการที่ทำวิจัยจำนวนมากสำหรับมอเตอร์ยานยนต์
แผนภูมิด้านล่างมาจากกระดาษอื่นที่ช่วยแสดงให้เห็นถึงวิธีการทำงาน (
อย่างไรก็ตามฉันคิดว่าคำอธิบายที่ให้ไว้ในบทความที่สองนี้ไม่ถูกต้องบางส่วน)
โปรดทราบว่าเมื่อมอเตอร์หมุนแรงดัน BEMF ในเฟสมอเตอร์จะผันผวนขึ้นและลง
ในรูปมันแสดงให้เห็นถึงช่วงเวลาที่ BEMF อยู่ในระดับสูงในเวที B และต่ำในเวที
ในกรณีนี้มันเป็นไปได้ที่กระแสจะไหลจาก B ถึง
มีความสำคัญต่อการเบรกใหม่ทรานซิสเตอร์ต่ำสุดกำลังเปิดและปิดอย่างรวดเร็ว (
สวิตช์ PWM นับพันต่อวินาที)
เมื่อสวิตช์ทรานซิสเตอร์ระดับไฮเอนด์ถูกปิด
เมื่อเปิดตัวทรานซิสเตอร์ต่ำกระแสกระแสดังที่แสดงในภาพแรก
ในแง่ของพลังงานอิเล็กทรอนิกส์วงจรเป็นเหมือนอุปกรณ์ที่เรียกว่า Boost Converter ซึ่งพลังงานจะถูกเก็บไว้ในเฟสของมอเตอร์ (
Wikipedia มีบทความที่ดีอธิบายว่า Boost Converter ทำงานอย่างไร)
พลังงานนี้จะถูกปล่อยออกมาเมื่อทรานซิสเตอร์ต่ำสุดถูกปิด แต่ที่แรงดันไฟฟ้าที่สูงขึ้นปัจจุบันกระแสไหลผ่าน \ 'ต่อต้านการกระตุ้น \' ไดโอดถัดจากแต่ละทรานซิสเตอร์แต่ละตัวแล้วกลับไปที่แบตเตอรี่
ไดโอดป้องกันไม่ให้กระแสไหลจากแบตเตอรี่ไปยังมอเตอร์
ในเวลาเดียวกันกระแสในทิศทางนี้ (
ตรงกันข้ามกับการขับขี่)
โต้ตอบกับวงแหวนแม่เหล็กเพื่อสร้างแรงบิดเชิงลบที่ทำให้มอเตอร์ช้าลง
ทรานซิสเตอร์ด้านต่ำใช้สวิตช์ PWM และรอบการทำงานของ PWM จะควบคุมปริมาณการเบรก
เมื่อขับรถการเปลี่ยนมอเตอร์สวิทช์จากการรวมกันหนึ่งไปเป็นครั้งต่อไปในหลักสูตรที่กำหนดเพื่อรักษาแรงบิดที่เป็นไปได้สูงสุด
การเปลี่ยนเบรกใหม่นั้นคล้ายกันมากเนื่องจากโหมดการสลับบางอย่างทำให้มอเตอร์สร้างแรงบิดเชิงลบให้มากที่สุดเท่าที่จะทำได้
หากคุณดูวิดีโอในขั้นตอนแรกคุณจะเห็นได้ว่าเบรกใหม่ใช้งานได้ดี แต่มันไม่ทำงานได้ดี
ฉันคิดว่าเหตุผลหลักคือมอเตอร์ฮาร์ดไดรฟ์ที่ฉันใช้เป็นมอเตอร์แรงบิดต่ำมากดังนั้นจึงไม่ได้ผลิต bemf มากยกเว้นด้วยความเร็วสูงสุด
ด้วยความเร็วที่ต่ำกว่ามีการเบรกแบบปฏิรูปน้อยมาก (ถ้ามี)
นอกจากนี้ระบบของฉันทำงานที่แรงดันไฟฟ้าที่ค่อนข้างต่ำ (12 V)
นอกจากนี้แต่ละเส้นทางผ่านไดโอดป้องกันการกระตุ้นจะลดแรงดันไฟฟ้าด้วยโวลต์หลายโวลต์ซึ่งจะช่วยลดประสิทธิภาพได้อย่างมาก
ฉันใช้ไดโอดวงจรเรียงกระแสปกติและฉันอาจได้รับประสิทธิภาพที่ดีขึ้นถ้าฉันใช้ไดโอดพิเศษที่มีแรงดันไฟฟ้าลดลง
ด้านล่างเป็นรายการอินพุตและเอาต์พุตของ Arduino
รวมถึงแผนภูมิและรูปถ่ายของบอร์ดของฉัน 2-
ดิจิตอลเข้าห้องโถง 1
120 K ความต้านทานของ GND 3
Digital Entry Hall 2
120 K ความต้านทานของ GND 4
Hall 3 อินพุตดิจิตอล-
120 K ความต้านทานของ GND 5
1 เอาท์พุท
ดิจิตอลในซีรีส์พร้อมตัวต้านทาน 400 โอห์ม 6 2
เอา
400
ท์พุทดิจิตอลในซีรีย์ ตัวต้านทาน 400 โอห์ม 11-
เอาต์พุตดิจิตอล EN 3 อยู่ในซีรีส์พร้อมตัวต้านทาน 400 โอห์ม, โพเทนชิออมิเตอร์ 100 K โอห์มโดยมี 5 V และ GND เชื่อมต่อที่ปลายทั้งสองและพินอะนาล็อก 0 เชื่อมต่อตรงกลาง
โพเทนชิออมิเตอร์นี้ใช้เพื่อควบคุมความเร็วมอเตอร์และปริมาณการเบรก
แหล่งจ่ายไฟ 5 V ใช้เพื่อใช้เซ็นเซอร์ฮอลล์ (ดูขั้นตอนที่ 5)
นี่คือโปรแกรมทั้งหมดที่ฉันเขียนสำหรับ Ardjuino ซึ่งรวมถึงความคิดเห็น:/* bldc_congroller 3. 1.
1* 3 โดย David Glazer
ซีรีย์ X คือ St L6234 3-
เฟสมอเตอร์ไดรเวอร์ IC * วิ่งดิสก์ไดรฟ์มอเตอร์ตามเข็มนาฬิกา * พร้อมการเบรกใหม่ * ความเร็วมอเตอร์และเบรกที่ควบคุมโดยโพเทนชิออมิเตอร์เดียว
* ตำแหน่งมอเตอร์โดยเซ็นเซอร์ฮอลล์เอฟเฟกต์
สาม
ครั้ง ถึง 1,2, 3 * 3 ทำบนพิน 5,6, 7, ตามลำดับ (ใน 1,2,3)
ต่อการจำลองใน 0 ไปยังโพเทนชิโอมิเตอร์เพื่อเปลี่ยนวัฏจักรหน้าที่ PWM และการเปลี่ยนแปลงระหว่างการขับขี่และการเบรก
*
ใหม่
เชื่อม
* AllState1
;
() {pinmode (2, อินพุต);
/Hall 1 pinmode (3, อินพุต);
/Hall 2 pinmode (4, อินพุต);
/L6234 HALL 3/เอาต์พุตของไดรเวอร์มอเตอร์ PINMODE (5, เอาต์พุต);
/ใน 1 pinmode (6, เอาต์พุต);
/ใน 2 pinmode (7, เอาต์พุต);
/ใน 3 pinmode (9, เอาต์พุต);
/en 1 pinmode (10, เอาต์พุต);
/en 2 pinmode (11, เอาต์พุต);
/en 3/อนุกรม เริ่มต้น (9600);
หากคุณจะใช้การเชื่อมต่อแบบอนุกรมโปรดอย่าใส่ใจกับบรรทัดนี้
คำสั่งฟลัชในตอนท้ายของโปรแกรม
/* ตั้งค่าความถี่ PWM บนพิน 9, 10 และ 11/ตั้งค่า PWM เป็น 32 kHz สำหรับพิน 9, 10/แรกล้างบิตก่อนเวลาสามบิตทั้งสาม: int prescalerval = 0x07;
/สร้างตัวแปรที่เรียกว่า prescalerval และตั้งค่าให้เท่ากับหมายเลขไบนารี \ '00000111 \' tccr1b & = ~ prescaler
/และค่าใน tccr0b ด้วยจำนวนไบนารีของ \ '11111000 \' /ตอนนี้ตั้งค่าบิตการเข้ารหัสล่วงหน้าที่เหมาะสม
/ตั้งค่า prescalerval ให้เท่ากับหมายเลขไบนารี \ '00000001 \' tccr1b | = prescalerval2;
/หรือค่าใน TCCR0B ที่มีจำนวนไบนารีของ \ '00000001 \' /ตั้งค่า PWM เป็น 32 kHz สำหรับ PIN 3,11 (
โปรแกรมนี้ใช้ PIN 11)
/ล้างบิตก่อนเครื่องพลอร์ทั้งสามก่อน: TCCR2B & = ~ pre-calerval;
/และค่าใน TCCR0B ด้วยจำนวนไบนารีของ \ '11111000 \'/ตอนนี้ตั้งค่าบิตการเข้ารหัสล่วงหน้าที่เหมาะสม: TCCR2B | = บิตเข้ารหัสล่วงหน้า 2;
/หรือค่าใน TCCR0B ที่มีจำนวนไบนารีของ \ '00000001 \'/แรกล้างบิตที่เข้ารหัสล่วงหน้าทั้งสาม:}
ห่วงหลักของ/prgrom void loop () {
/time = millis ();
เวลาหลังจากโปรแกรมการพิมพ์เริ่มต้นขึ้น println (เวลา); // อนุกรม พิมพ์(\'\');
คันเร่ง = analograd (0);
/เค้นโพเทนชิออมิเตอร์ MSPS = MAP (
เค้น, 512,1023, 0,255);
/การขับขี่ถูกแมปกับครึ่งบนของโพเทนชิออมิเตอร์ bspeed = แผนที่ (
เค้น, 0,511,255, 0);
/การเบรกแบบครึ่งส่วนครึ่งส่วนที่ด้านล่างของหม้อ/MSPS ED = 100;
/สำหรับการดีบัก HallState1 = DigitalRead (2);
/อ่านค่าอินพุตจาก Hall 1 2 = Digital Read (3);
/อ่านค่าอินพุตจาก Hall 2 3 = Digital Read (4);
อ่านค่าอินพุต/ตัวเลขเขียนจาก Hall 3 (8, Hallstate1);
/เมื่อเซ็นเซอร์ที่สอดคล้องกันอยู่ในพลังงานสูง LED จะเปิด
ใช้งานในการดีบัก DigitalWrite (9, HallState2);
// DigitalWrite (10, Hallstate3); hallval = (hallstate1)+ (2*hallstate2)+ (4*hallstate3);
/คำนวณค่าไบนารีของ 3 เซ็นเซอร์ฮอลล์/* ซีรีส์ พิมพ์ (\ 'H 1: \');
สำหรับการดีบักพอร์ตอนุกรม println (hallstate1); อนุกรม พิมพ์ (\ 'H 2: \'); อนุกรม println (hallstate2); อนุกรม พิมพ์ (\ 'H 3: \'); อนุกรม println (hallstate3); อนุกรม println (\ '\');
*/// อนุกรม println (mspeed); // อนุกรม println (Hallval); // อนุกรม พิมพ์(\'\');
/ตรวจสอบเอาท์พุททรานซิสเตอร์/ความล่าช้า (1,000);
/* t1 = digitalRead (2); // t1 = ~ t1;
T2 = DigitalRead (4); // t2 = ~ t2;
T3 = DigitalRead (5); // t3 = ~ t3; อนุกรม พิมพ์ (T1); อนุกรม พิมพ์ (\ '\ t \'); อนุกรม พิมพ์ (T2); อนุกรม พิมพ์ (\ '\ t \'); อนุกรม พิมพ์ (T3); อนุกรม พิมพ์(\'\'); อนุกรม พิมพ์(\'\'); อนุกรม พิมพ์ (DigitalRead (3)); อนุกรม พิมพ์ (\ '\ t \'); อนุกรม พิมพ์ (DigitalRead (9)); อนุกรม พิมพ์ (\ '\ t \'); อนุกรม println (DigitalRead (10)); อนุกรม พิมพ์(\'\'); อนุกรม พิมพ์(\'\'); // ล่าช้า (500);
*/การเปลี่ยนเฟสการขับขี่/หมายเลขไบนารีแต่ละตัวมีกรณีที่สอดคล้องกับทรานซิสเตอร์ที่แตกต่างกันเปิด/บิตคณิตศาสตร์ที่ใช้ในการเปลี่ยนค่าของเอาต์พุต Arduino:/portd มีเอาต์พุตของพินใน L6234 ไดรเวอร์/เอาต์พุตที่ใช้ในการตรวจ
สอบ ค่าคันเร่งควบคุมโดยโพเทนชิออมิเตอร์) if (Throttle> 511) {switch (hallval) {
กรณี 3:/portd = 1111xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
XXX หมายถึงอินพุตฮอลล์และพอร์ต & = B00011111 ไม่ควรเปลี่ยน
Portd | = B01100000;
/analowrite (9, mspeed);
PWM ในเฟส (
ทรานซิสเตอร์ระดับสูง) analogrite (10,0);
การปิดเฟส B (duty = 0) analogWrite (11,255); // เฟส c บน -duty = 100% (
ทรานซิสเตอร์ต่ำสุด) แตก;
กรณีที่ 1:/portd = b001xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
/portd | = B00100000;
/analowrite (9, mspeed);
PWM ในเฟส (
ทรานซิสเตอร์ระดับสูง) analogrite (10,255); // เฟส B บน (
ทรานซิสเตอร์ต่ำสุด) analogWrite (11,0); // เฟส b ปิด (duty = 0) break;
กรณีที่ 5:/portd = b101xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
/portd | = B10100000; analogrite (9,0); analogrite (10,255); analogrite (11, mspeed); หยุดพัก;
กรณีที่ 4:/portd = b100xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
Portd | = bym000;
/analowrite (9,255); analogrite (10,0); analogrite (11, mspeed); หยุดพัก;
กรณีที่ 6:/portd = b110xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
Portd B11 000 =;
/analowrite (9,255); analogrite (10, mspeed); analogrite (11,0); หยุดพัก;
กรณีที่ 2:/portd = b010xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
B0201700 Portd | -
/analowrite (9,0); analogrite (10, mspeed); analogrite (11,255); หยุดพัก; }}
/การเปลี่ยนเฟสเบรกใหม่ /พอร์ต (
เอาท์พุทของ IN PIN บน L6234)
พินอยู่ในระดับต่ำเสมอดังนั้นทรานซิสเตอร์ต่ำในแต่ละเฟสเท่านั้นที่ใช้ในระหว่าง regen เบรก else {
/portd = b000xxx00;
/เอาต์พุตที่คาดหวังของ PIN 0-7
พอร์ต & = B00011111;
Portd | = BYM0000; // switch (hallval) {
กรณีที่ 3: การเขียนเปรียบเทียบ (9, bspeed); // analogWrite (9,0); analogrite (10,0); analogrite (11,0); หยุดพัก;
กรณีที่ 1: การเขียนแบบเปรียบเทียบ (9, BSPEED); analogrite (10,0); analogrite (11,0); หยุดพัก;
กรณีที่ 5: การเขียนแบบเปรียบเทียบ (9,0); analogrite (10,0); analogrite (11, BSPEED); หยุดพัก;
กรณีที่ 4: การเขียนแบบเปรียบเทียบ (9,0); analogrite (10,0); analogrite (11, BSPEED); หยุดพัก;
กรณีที่ 6: การเขียนแบบเปรียบเทียบ (9,0); analogrite (10, BSPEED); analogrite (11,0); หยุดพัก;
กรณีที่ 2: การเขียนแบบเปรียบเทียบ (9,0); analogrite (10, BSPEED); analogrite (11,0); หยุดพัก; }}
/time = millis ();
เวลาหลังจากโปรแกรมการพิมพ์เริ่มต้นขึ้น println (เวลา); // อนุกรม พิมพ์(\'\'); // อนุกรม ล้าง ();
/หากคุณต้องการดีบักโดยใช้พอร์ตอนุกรมโปรดอย่าใส่ใจ}
ฉันคิดว่าการดำเนินการที่ Arduino ทำในโครงการนี้ง่ายมากจนดูเหมือนว่าจะเสียงานกับไมโครโปรเซสเซอร์
ในความเป็นจริงแอปพลิเคชันแอปพลิเคชันของ L6234 แนะนำอาร์เรย์เกตที่ตั้งโปรแกรมได้ง่าย (
GAL16V8 ที่ทำจากสารกึ่งตัวนำขัดแตะ) เพื่อทำงานนี้
ฉันไม่คุ้นเคยกับการเขียนโปรแกรมของอุปกรณ์นี้ แต่ค่าใช้จ่ายของ IC เพียง $ 2 39 ที่นวร์ก
วงจรรวมที่คล้ายกันอื่น ๆ ก็ราคาถูกเช่นกัน
อีกทางเลือกหนึ่งคือการรวมประตูตรรกะที่รอบคอบเข้าด้วยกัน
ฉันมาพร้อมกับลำดับตรรกะที่ค่อนข้างง่ายซึ่งสามารถขับเคลื่อน L6234 IC จากเอาท์พุทของเซ็นเซอร์ฮอลล์ทั้งสาม
แผนภูมิสำหรับเวที A แสดงอยู่ด้านล่างและตารางความจริงสำหรับทั้งสามขั้นตอน (
เพื่อให้วงจรลอจิกของเฟส B และ C, \ 'ไม่ใช่ \' ประตูต้องเปลี่ยนไปอีกด้านหนึ่งของ \ 'หรือ
ปัญหานี้คือการเชื่อมต่อที่
ดีที่สุด