คำถามติดแท็ก arduino

ให้แน่ใจว่าได้ใช้ Arduino Stack Exchange สำหรับคำถามที่มีมากกว่า Arduino และอุปกรณ์อิเล็กทรอนิกส์น้อย

9
ฉันจะทำให้ออสซิลเลเตอร์ขนาดเล็กทำงานที่ 31,891,269,116 µHz แม่นยำได้อย่างไร
ฉันกำลังมองหาเพื่อสร้างโมดูล RTC สำหรับ Arduino ที่ทำงานในเวลา Mars อัตราการแปลงคือ 1.0274912510 Earth seconds ถึง 1 Mars second ในขณะที่ฉันจัดการเพื่อให้บรรลุผลทางโปรแกรมด้วยความละเอียด <2 วินาที (ซึ่งไม่เหมาะอย่างยิ่งฉันต้องการความแม่นยำมากกว่า 300 มิลลิวินาที) โดยใช้คณิตศาสตร์จุดคงที่ใน Arduino Uno ที่เชื่อมต่อกับโมดูล RTC ปกติฉัน สงสัยว่ามันจะเป็นไปได้หรือไม่ที่จะมีออสซิลเลเตอร์แรงดันต่ำบางชนิดทำงานที่แม่นยำ 31,891,269,116 µHz (31.891269116 kHz) ซึ่งจะมากหรือน้อยสามารถเปลี่ยนได้ด้วยคริสตัลนาฬิกามาตรฐาน 32 kHz (แต่ฉันจะเปิดให้แนวคิดอื่น ๆ ) ตราบใดที่มันไม่แพงอย่างเด็ดขาด) ความคิดใด ๆ ที่อาจเป็นไปได้? อีกทางเลือกหนึ่งตัวจับเวลาบางประเภทที่ดับลงทุก ๆ 1.0274912510 วินาทีก็เป็นที่ยอมรับเช่นกัน
15 arduino  timer 

6
อัลกอริทึม PID: วิธีการบัญชีสำหรับการเปลี่ยนแปลงค่าอินพุตอย่างรวดเร็วหลังจากล่าช้าเป็นเวลานาน
ฉันกำลังพยายามใช้อัลกอริทึม PID พื้นฐานใน Arduino Leonardo เพื่อผสมน้ำประปาร้อนและเย็นโดยใช้วาล์วควบคุมแบบเซอร์โว เป้าหมายคือรักษาอุณหภูมิให้อยู่ใกล้กับจุดที่กำหนดมากที่สุด สิ่งสำคัญอย่างยิ่งคือการป้องกันไม่ให้อุณหภูมิเอาต์พุตเกินขนาดที่กำหนดไว้เพื่อป้องกันผู้ใช้จากการเบิร์น สิ่งที่สำคัญอันดับสองคือทำให้อุณหภูมิใกล้กับจุดที่กำหนดโดยเร็วที่สุด สำหรับการเปลี่ยนแปลงอุณหภูมิเล็กน้อยการใช้งานมาตรฐานของอัลกอริทึม PIDดูเหมือนว่าจะใช้ได้ แต่ฉันไม่รู้ว่าจะอธิบายความล่าช้าที่อาจเกิดขึ้นได้เมื่อรอให้น้ำร้อนไปถึงวาล์วเนื่องจากความล่าช้าเหล่านี้นานกว่าความล่าช้ามาตรฐานมากหลังจากเปลี่ยนตำแหน่งวาล์ว เห็นได้ชัดว่าขึ้นอยู่กับความยาวของเส้นน้ำร้อนและเวลาตั้งแต่การใช้น้ำร้อนครั้งสุดท้ายมันอาจใช้เวลาหลายสิบวินาทีสำหรับน้ำร้อนที่จะไปถึงวาล์วดังนั้นในช่วงเวลานี้อุณหภูมิของน้ำยังคงค่อนข้างคงที่ที่อุณหภูมิต่ำ และวาล์วน้ำร้อนจะเปิดเร็ว ๆ นี้ 100% ส่วนประกอบหนึ่งเริ่มสะสมค่าความผิดพลาดขนาดใหญ่ เมื่อน้ำร้อนถึงวาล์วในที่สุดอุณหภูมิที่ตรวจพบจะเพิ่มขึ้นอย่างรวดเร็วจนถึงอุณหภูมิน้ำร้อนสูงสุด เนื่องจากข้อผิดพลาดที่สำคัญขนาดใหญ่วาล์วน้ำร้อนจะถูกเก็บไว้ที่ 100% เป็นเวลานานหลังจากที่อุณหภูมิเกินกว่าที่กำหนดไว้เนื่องจากการรอคอยค่าหนึ่งจะลดลงสู่ระดับปกติ ดังนั้นผลลัพธ์คือน้ำอุณหภูมิสูงสุดเป็นเวลาหลายสิบ (สิบ) วินาที ฉันไม่แน่ใจว่าจะคำนึงถึงความล่าช้าที่เป็นไปได้นี้นานแค่ไหน ในกรณีเช่นนี้จะเป็นการดีหรือไม่ที่จะกำหนดขอบเขตบน (และล่าง) บนค่าความผิดพลาดแบบอินทิกรัลเพื่อ จำกัด เวลาตอบสนองสูงสุด? นี้ดูเหมือนว่าจะพ่ายแพ้วัตถุประสงค์ของส่วนประกอบและยังจะยังคงกำหนดบางส่วนล่าช้าหลังจากถึง SetPoint หรือมีวิธีที่ดีกว่าในการจัดการกับการเปลี่ยนแปลงอินพุทที่รวดเร็วหลังจากล่าช้าเป็นเวลานานหรือไม่? ขอบคุณสำหรับคำแนะนำใด ๆ !

5
Arduino รีเซ็ต / แขวนเนื่องจากประกายไฟในสาย ac
นี่คือการออกแบบ PCB ของโครงการที่ฉันทำงานเมื่อเร็ว ๆ นี้ (การออกแบบ pcb ครั้งแรกของฉัน) แนวคิดคือการควบคุมเครื่องใช้ไฟฟ้า ac (พัดลมหลอดไฟ ฯลฯ ) โดยไม่มีรีเลย์ ฉันใช้ triacs ซึ่งดีกว่ารีเลย์สำหรับแอพพลิเคชั่นดังกล่าว ฉันใช้ opto-isolators สำหรับการแยกอย่างสมบูรณ์จากสาย ac ฉันลองใช้งาน Arduino โดยใช้สาย USB ที่เชื่อมต่อกับแล็ปท็อปของฉัน (พร้อมที่ชาร์จไม่ได้เสียบ) รวมถึงอะแดปเตอร์ติดผนัง (12V) ตอนแรกวงจรก็ทำงานได้ดี ฉันสามารถถ่ายโอนรหัสลงในคอนโทรลเลอร์และหลอดควบคุม (เปิด / ปิดเช่นเดียวกับหรี่แสง) โดยใช้ UART ฉันส่งคำสั่งผ่าน UART อย่างไรก็ตามดูเหมือนว่าเมื่อใดก็ตามที่มีประกายไฟบนสาย ac (เมื่อฉันเสียบพัดลมเข้า / ออก) ไมโครคอนโทรลเลอร์ไม่ได้ดูมีความสุข บางครั้งมันรีเซ็ต (ซึ่งเป็นส่วนที่ดีกว่าของรูปภาพ) และเวลาอื่น ๆ มันแฮงค์และฉันไม่สามารถส่งคำสั่งผ่าน UART …

2
ฉันจะใช้ SMD Arduino เพื่อตั้งโปรแกรม DIP ATmega328 ได้อย่างไร
ฉันมี Arduino ซึ่งมีไมโครคอนโทรลเลอร์ติดตั้งบนพื้นผิว (SMD): ฉันรู้วิธีใช้ DIP arduino เป็นโปรแกรมเมอร์สำหรับ DIP ATmega328 เป็นเรื่องง่าย - คุณเพียงแค่ใส่ไมโครคอนโทรลเลอร์ของคุณในที่ยึด อย่างไรก็ตามด้วย Arduino ที่ติดตั้งบนพื้นผิวก็ไม่มีความชัดเจน Desoldering ตัวควบคุมขนาดเล็กเป็นวิธีหนึ่ง แต่นั่นเป็นสิ่งที่เลวร้ายและเป็นอันตราย ฉันสามารถใช้ Arduino นี้เป็นโปรแกรมเมอร์สำหรับ DIP ATmega328 โดยไม่ทำลายบอร์ดได้หรือไม่? ถ้าเป็นเช่นนั้นได้อย่างไร


3
ฉันควรกำหนดค่าหมุด I / O ที่ไม่ได้ใช้บน ATMega328P อย่างไรเพื่อการสิ้นเปลืองพลังงานน้อยที่สุด?
ฉันพยายามลดพลังงานให้ได้มากที่สุดในบอร์ด Arduino ที่ฉันสร้างขึ้น หมุดอินพุตที่ไม่ได้ใช้ควรกำหนดค่าอย่างไร มีคำตอบที่ไม่กี่ ( ที่นี่ , ที่นี่ ) แล้วสำหรับการนี้ แต่ฉันหลังจากบางสิ่งบางอย่างที่เฉพาะเจาะจงเพื่อ ATMega328P ตั้งค่าพินเป็นอินพุทขับสูง ๆ เพื่อดึงภายใน ตั้งค่าพินเป็นอินพุทขับดันต่ำ ตั้งค่าพินเป็นอินพุทดึงขึ้นภายนอก ตั้งค่าพินเป็นอินพุทดึงลงจากภายนอก ตั้งค่าพินเป็นเอาต์พุตต่ำ ตั้งค่าพินเป็นเอาท์พุทสูง ตั้งพินเป็นเอาท์พุทต่ำดึงภายนอก
15 arduino 

5
ทางออกที่ง่ายและปลอดภัยในการควบคุมปลั๊กไฟด้วย Arduino หรือ PC [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับการแลกเปลี่ยนกองวิศวกรรมไฟฟ้า ปิดให้บริการใน6 ปีที่ผ่านมา มีโซลูชั่นอะไรบ้างในการควบคุมปลั๊กไฟ (หรือแม้กระทั่งซ็อกเก็ตไฟ) ที่เป็นไปได้เช่นเปิดและปิด ฉันได้ค้นหาโซลูชัน xbee / zigbee แต่ดูเหมือนจะไม่มีวิธีแก้ปัญหาสำหรับซ็อกเก็ตพลังงานของยุโรป (และโซลูชันไม่กี่ตัวสำหรับซ็อกเก็ตของสหรัฐอเมริกา) โซลูชันแบบใช้สายรวมถึง Arduino นั้นใช้ได้สำหรับฉัน ฉันต้องการให้มันใช้งานง่าย (สำหรับ zigbee ฉันโอเคเพื่อเรียนรู้วิธีใช้) และปลอดภัย (ฉันไม่ต้องการเชื่อมต่อหรือประสานสิ่งต่าง ๆ เพราะมันเป็น 240V ฉันไม่ต้องการความเสี่ยงใด ๆ กับ การติดตั้งระบบไฟฟ้า)
15 arduino  relay  xbee  zigbee 

7
ฉันจะวัด RPM ของล้อได้อย่างไร
ฉันพยายามสร้างระบบออนบอร์ดสำหรับจักรยานของฉันโดยใช้ Arduino หรืออาจเป็นบอร์ด Lilypad ฉันคิดว่าฉันควรใช้เซ็นเซอร์เอฟเฟกต์ Hall แต่ตัวเลือกอื่นก็ดีเช่นกัน ฉันต้องการส่งออกความเร็วของฉันไปยังจอแสดงผล LCD และฉันสงสัยว่าวิธีที่ดีที่สุดที่จะไปเกี่ยวกับเรื่องนี้

5
การเชื่อมต่อ Arduino กับร่างกายมนุษย์ปลอดภัยหรือไม่?
ฉันต้องการสร้างโครงการที่ใช้ Arduino เพื่อรวบรวมและแสดงข้อมูลคลื่นไฟฟ้าหัวใจ มันใช้สองขั้วไฟฟ้าที่แนบมากับร่างกาย (บนหน้าอก) จากนั้นสัญญาณจะถูกส่งผ่าน op-amps ไปยัง Arduino ADC pin Arduino เชื่อมต่อกับพีซี ปลอดภัยหรือไม่สำหรับทั้งมนุษย์และบอร์ด Arduinoที่จะเชื่อมต่อด้วยวิธีนี้? ฉันควรทำข้อควรระวังเพื่อความปลอดภัยและหากเป็นเช่นนั้น

4
สะพานบัดกรีที่ติดอยู่บนชิปนั้นแย่เสมอไปหรือไม่?
ฉันเพิ่งซื้อ Arduino Ethernet shield ของฉัน - เป็นน็อคดาวน์ราคา $ 10 แทนที่จะเป็น $ 60 ฉันเชื่อมต่อแล้ว แต่ใช้งานไม่ได้ - ไฟ LED สว่างขึ้น แต่ไม่กะพริบและไม่มีการเชื่อมโยงอีเธอร์เน็ต (สวิตช์อีเธอร์เน็ตไม่ติดขึ้นไม่สามารถปิง ฯลฯ ) ราวกับว่า Arduino ไม่สามารถสื่อสารกับบอร์ดได้ พยายามหาสาเหตุว่าทำไมมองอย่างใกล้ชิดดูเหมือนว่าการบัดกรีบนชิป Wiznet ยุ่งเหยิงและมีพินไม่กี่ชุดที่เชื่อมโยงกัน นี่อาจเป็นสาเหตุของปัญหาของฉันหรือสิ่งนี้สามารถทำได้ตามวัตถุประสงค์หรือไม่?

2
analogRead (0) หรือ analogRead (A0)
รัฐอาร์ดิโนอ้างอิงที่คุณจะใช้รหัสต่อไปนี้เพื่ออ่านค่าจากอะนาล็อกพิน # 5: int val1 = analogRead(5); อย่างไรก็ตามในการอ่านจากพินดิจิตอล # 5 คุณจะส่งหมายเลขพินเดิมไปที่digitalRead: int val2 = digitalRead(5); คุณไม่ควรใช้analogRead(A5)แทนanalogRead(5)? ถ้าไม่รหัสต่อไปนี้ทำอะไร: int val3 = analogRead(A5);

2
Pin 13: ฉันต้องการตัวต้านทานหรือไม่
คำถามนี้กล่าวว่าพิน 13 มีตัวต้านทานในตัวสำหรับ LED ที่มาพร้อมกับมาตรฐานในชุด Arduino ส่วนใหญ่ เพื่อนของฉันบอกกับฉันว่าเพราะมีตัวต้านทานอยู่บนพินอยู่แล้วฉันไม่จำเป็นต้องใส่มันเมื่อฉันเสียบ LED ภายนอกเข้ากับขา สิ่งนี้ไม่ถูกต้องกับฉันเพราะฉันอ่านไปทั่วทุกที่ที่มันแย่มากที่จะเสียบไฟ LED โดยไม่มีตัวต้านทาน จำกัด กระแส ฉันไม่สามารถหาตำแหน่งที่ pin 13 อยู่บนแผนภาพวงจร (ยังคงคุ้นเคยกับการอ่านเหล่านั้น) ดังนั้นฉันจึงไม่รู้ว่าตัวต้านทานแบบบิวด์อินมีสายอะไร คำถามสั้น ๆ :ฉันต้องการตัวต้านทาน จำกัด กระแสไฟฟ้าเมื่อใช้พิน 13 สำหรับ LED (เล็ก) หรือไม่? แก้ไข : ตามที่โพลาร์ชี้ไปที่ด้านล่างตัวต้านทานเพียงตัวเดียวจะทำเคล็ดลับได้ อย่างไรก็ตามฉันอยากรู้จริงๆเกี่ยวกับการวางตำแหน่งของตัวต้านทาน (บิวด์อิน) ตัวเดียว หากอยู่ในลำดับที่มีส่วนหัวสำหรับ P13 ก็ควร จำกัด กระแส ถ้ามันขนานกันฉันก็ไม่คิดอย่างนั้น อย่างไรก็ตามความรู้ทางอิเล็คทรอนิคส์ของฉันไม่ได้มีขนาดใหญ่มากดังนั้นฉันอาจผิดพลาดได้ ...
14 arduino  hardware  pins 

5
ฉันจะตรวจสอบบอร์ด Arduino (หรือตัวควบคุมใด) ในซอฟต์แวร์ได้อย่างไร
ฉันมีโครงการที่ฉันต้องการทำงานกับ Uno หรือ Mega (หรือแม้กระทั่ง Due) และจะดีถ้าฉันไม่ต้องการซอฟต์แวร์สองรุ่น ตัวอย่างเช่นบน Mega เพื่อใช้ SoftwareSerial คุณต้องใช้พินที่แตกต่างจากหมุดบน Uno ดูเอกสารเกี่ยวกับซอฟท์แวประจำสินค้า อย่างไรก็ตามมันเป็นการดีที่จะตรวจจับว่าฉันใช้ Uno ดังนั้นฉันสามารถใช้พิน 4 และ 5 สำหรับ TX / RX และถ้าฉันใช้ Mega ซอฟต์แวร์จะตรวจจับและใช้หมุด 10 และ 11 (และของ แน่นอนฉันจะต้องวางสายต่างกัน แต่อย่างน้อยซอฟต์แวร์จะเหมือนเดิม)
14 arduino 

5
จะอ่านโปรแกรมปัจจุบันจาก Arduino ได้อย่างไร
ฉันได้รับ Arduino PCB พร้อมATmega2560ซึ่งตั้งโปรแกรมไว้แล้วกับ bootloader Arduino และบางโปรแกรม ฉันมีร่างแต่ก่อนที่จะเล่นซอมันฉันต้องการสำรองไบนารีปัจจุบันที่อยู่ในตัวควบคุม ในฐานะ Arduinos ส่วนใหญ่จะเชื่อมต่อกับพีซีโดยใช้ตัวแปลง USB เป็นอนุกรมที่เชื่อมต่อกับ TX0 และ RX0 และไม่มีISPอินเตอร์เฟส เห็นได้ชัดว่ามีรหัสสำหรับอ่านใน Arduino bootloaderแต่ฉันไม่รู้ว่าเครื่องมือใดที่ใช้ในการเข้าถึงเนื่องจากไม่มีรายการเมนูใน Arduino IDE ฉันต้องใช้ซอฟต์แวร์อะไรในการอ่านโปรแกรมจาก Arduino?
14 arduino 

6
วงจรโซลินอยด์ที่ดำเนินการ MOSFET ของฉันทำลายอินพุต Arduino ของฉัน
ฉันสร้างซีรีส์ PCB เพื่อจ่ายกำลังโซลินอยด์วาล์วที่ใช้แหล่งจ่ายไฟภายนอก ฉันสลับมันด้วยBS170 MOSFETsโดยใช้ Arduino เป็นสัญญาณเกท ผมตามมันแก้ปัญหาโดยเจสัน S นี่เป็นภาพประกอบของวงจรของฉัน: ในการทดสอบ PCB นั้นฉันสังเกตว่าส่วนใหญ่ทำงานได้ดี แต่บางคนทำไม่ได้ ไม่มีปัญหาอาจเป็นเรื่องการบัดกรี อย่างไรก็ตามคนที่มีข้อบกพร่องเหล่านั้นสามารถทำลายหมุดดิจิตอล Arduino สองตัวได้! ที่หนึ่งฉันได้แรงดันไฟฟ้าคงที่ที่ 5 V และอีกอันหนึ่งเอาท์พุท 0.2 V เมื่อฉันส่งสัญญาณ HIGH ไปที่นั้นและ 0.5 V เมื่อฉันส่งสัญญาณ LOW สิ่งที่แปลก ดังนั้นฉันจึงเดาว่าวงจรที่ผิดพลาดเกิดขึ้น (บางส่วน) 16 V ไหลผ่าน Arduino ทำลายพวกเขา ฉันจะป้องกัน Arduino ในสถานการณ์นี้จากกระแสที่สูงเกินไปได้อย่างไร ฉันรู้เกี่ยวกับไดโอดซีเนอร์ แต่ฉันไม่รู้ว่าจะวางไว้อย่างไรเพื่อป้องกันอินพุต ข้อมูลทางเทคนิค: 1/4 "NPT ไฟฟ้าโซลินอยด์วาล์ว 12-Volt DC, …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.