Arduino - พื้นฐานและการออกแบบ

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





การกำหนด Arduino

Arduino เป็นชุดที่ใช้ไมโครคอนโทรลเลอร์ซึ่งสามารถใช้งานได้โดยตรงโดยการซื้อจากผู้ขายหรือสามารถทำที่บ้านโดยใช้ส่วนประกอบเนื่องจากคุณสมบัติฮาร์ดแวร์โอเพนซอร์ส โดยพื้นฐานแล้วจะใช้ในการสื่อสารและในการควบคุมหรือใช้งานอุปกรณ์ต่างๆ ก่อตั้งโดย Massimo Banzi และ David Cuartielles ในปี 2548

1



สถาปัตยกรรม Arduino:

โดยพื้นฐานแล้วโปรเซสเซอร์ของ Arduino ใช้สถาปัตยกรรม Harvard ซึ่งรหัสโปรแกรมและข้อมูลโปรแกรมมีหน่วยความจำแยกกัน ประกอบด้วยหน่วยความจำสองโปรแกรม - หน่วยความจำโปรแกรมและหน่วยความจำข้อมูลรหัสจะถูกเก็บไว้ในหน่วยความจำโปรแกรมแฟลชในขณะที่ข้อมูลจะถูกเก็บไว้ในหน่วยความจำข้อมูล Atmega328 มีหน่วยความจำแฟลช 32 KB สำหรับจัดเก็บโค้ด (ซึ่ง 0.5 KB ใช้สำหรับ bootloader) SRAM 2 KB และ EEPROM 1 KB และทำงานด้วยความเร็วสัญญาณนาฬิกา 16MHz


สถาปัตยกรรม Arduino

สถาปัตยกรรม Arduino



แผนภาพ Arduino Pin

ตัวอย่างทั่วไปของบอร์ด Arduino คือ Arduino Uno ประกอบด้วย ATmega328 - ไมโครคอนโทรลเลอร์ 28 พิน

แผนภาพ Arduino Pin

แผนภาพ Arduino Pin

Arduino Uno ประกอบด้วยพินอินพุต / เอาท์พุตดิจิตอล 14 พิน (ซึ่ง 6 ตัวสามารถใช้เป็นเอาต์พุต PWM), อินพุตอะนาล็อก 6 ตัว, ออสซิลเลเตอร์คริสตัล 16 MHz, การเชื่อมต่อ USB, แจ็คเพาเวอร์, ส่วนหัว ICSP และปุ่มรีเซ็ต

แจ็คพาวเวอร์ : Arduino สามารถใช้พลังงานจากพีซีผ่าน USB หรือผ่านแหล่งภายนอกเช่นอะแดปเตอร์หรือแบตเตอรี่ สามารถทำงานกับแหล่งจ่ายภายนอก 7 ถึง 12V สามารถใช้พลังงานภายนอกผ่านพิน Vin หรือโดยการอ้างอิงแรงดันไฟฟ้าผ่านขา IORef

อินพุตดิจิตอล : ประกอบด้วยอินพุตดิจิตอล 14 พิน / ขาออกซึ่งแต่ละตัวให้หรือรับกระแส 40mA บางตัวมีฟังก์ชันพิเศษเช่นพิน 0 และ 1 ซึ่งทำหน้าที่เป็น Rx และ Tx ตามลำดับสำหรับการสื่อสารแบบอนุกรมพิน 2 และ 3 ซึ่งเป็นอินเทอร์รัปต์ภายนอกพิน 3,5,6,9,11 ซึ่งให้เอาต์พุต pwm และพิน 13 ที่เชื่อมต่อ LED


อินพุตแบบอนาล็อก : มีพินอินพุต / เอาต์พุตแบบอะนาล็อก 6 พินแต่ละอันให้ความละเอียด 10 บิต

ARef : มีการอ้างอิงถึงอินพุตอะนาล็อก

รีเซ็ต : จะรีเซ็ตไมโครคอนโทรลเลอร์เมื่ออยู่ในระดับต่ำ

จะตั้งโปรแกรม Arduino ได้อย่างไร?

ข้อได้เปรียบที่สำคัญที่สุดของ Arduino คือสามารถโหลดโปรแกรมลงในอุปกรณ์ได้โดยตรงโดยไม่ต้องใช้โปรแกรมเมอร์ฮาร์ดแวร์ในการเบิร์นโปรแกรม สิ่งนี้เกิดขึ้นเนื่องจากการมี Bootloader 0.5KB ซึ่งทำให้โปรแกรมสามารถเบิร์นลงในวงจรได้ สิ่งที่เราต้องทำคือดาวน์โหลดซอฟต์แวร์ Arduino และเขียนโค้ด

การเขียนโปรแกรม Arduinoหน้าต่างเครื่องมือ Arduino ประกอบด้วยแถบเครื่องมือที่มีปุ่มต่างๆเช่นตรวจสอบอัปโหลดใหม่เปิดบันทึกจอภาพแบบอนุกรม นอกจากนี้ยังประกอบด้วยโปรแกรมแก้ไขข้อความเพื่อเขียนโค้ดพื้นที่ข้อความที่แสดงข้อเสนอแนะเช่นการแสดงข้อผิดพลาดคอนโซลข้อความที่แสดงผลลัพธ์และชุดของเมนูเช่นเมนูไฟล์แก้ไขเครื่องมือ

5 ขั้นตอนในการเขียนโปรแกรม Arduino

  • โปรแกรมที่เขียนใน Arduino เรียกว่าสเก็ตช์ ร่างพื้นฐานประกอบด้วย 3 ส่วน

1. การประกาศตัวแปร
2. Initialization: เขียนไว้ในฟังก์ชัน setup ()
3. รหัสควบคุม: เขียนในฟังก์ชัน loop ()

  • ภาพร่างถูกบันทึกด้วยนามสกุล. ino การดำเนินการใด ๆ เช่นการตรวจสอบการเปิดภาพร่างการบันทึกภาพร่างสามารถทำได้โดยใช้ปุ่มบนแถบเครื่องมือหรือใช้เมนูเครื่องมือ
  • ควรเก็บภาพร่างไว้ในไดเร็กทอรี Sketchbook
  • เลือกบอร์ดที่เหมาะสมจากเมนูเครื่องมือและหมายเลขพอร์ตอนุกรม
  • คลิกที่ปุ่มอัปโหลดหรือเลือกอัปโหลดจากเมนูเครื่องมือ ดังนั้นโค้ดจะถูกอัพโหลดโดย bootloader ไปยังไมโครคอนโทรลเลอร์

ฟังก์ชั่นพื้นฐานบางประการของ Adruino ได้แก่ :

  • digitalRead (พิน): อ่านค่าดิจิทัลที่พินที่กำหนด
  • digitalWrite (พินค่า): เขียนค่าดิจิทัลไปยังพินที่กำหนด
  • pinMode (พินโหมด): ตั้งค่าพินเป็นโหมดอินพุตหรือเอาต์พุต
  • analogRead (พิน): อ่านและส่งคืนค่า
  • analogWrite (พินค่า): เขียนค่าลงในพินนั้น
  • serial.begin (อัตราการส่งข้อมูล): ตั้งค่าจุดเริ่มต้นของการสื่อสารแบบอนุกรมโดยการตั้งค่าอัตราบิต

จะออกแบบ Arduino ของคุณเองได้อย่างไร?

นอกจากนี้เรายังสามารถออกแบบ Arduino ของเราเองได้โดยทำตามแผนผังที่กำหนดโดยผู้จำหน่าย Arduino และมีให้ที่เว็บไซต์ สิ่งที่เราต้องการคือส่วนประกอบต่อไปนี้ - เขียงหั่นขนม, ไฟ led, แจ็คพาวเวอร์, ซ็อกเก็ต IC, ไมโครคอนโทรลเลอร์, ตัวต้านทานไม่กี่ตัว, ตัวควบคุม 2 ตัว, ตัวเก็บประจุ 2 ตัว

  • ซ็อกเก็ต IC และแจ็คไฟติดตั้งอยู่บนบอร์ด
  • เพิ่มวงจรควบคุม 5v และ 3.3v โดยใช้การรวมกันของตัวควบคุมและตัวเก็บประจุ
  • เพิ่มการเชื่อมต่อสายไฟที่เหมาะสมกับหมุดไมโครคอนโทรลเลอร์
  • เชื่อมต่อพินรีเซ็ตของซ็อกเก็ต IC กับตัวต้านทาน 10K
  • เชื่อมต่อคริสตัลออสซิลเลเตอร์กับหมุด 9 และ 10
  • เชื่อมต่อ led เข้ากับพินที่เหมาะสม
  • ติดตั้งส่วนหัวของตัวเมียเข้ากับบอร์ดและเชื่อมต่อกับหมุดตามลำดับบนชิป
  • ติดตั้งส่วนหัวของชาย 6 แถวซึ่งสามารถใช้เป็นทางเลือกในการอัปโหลดโปรแกรมได้
  • อัปโหลดโปรแกรมบนไมโครคอนโทรลเลอร์ของ Adruino สำเร็จรูปจากนั้นงัดออกและวางกลับที่ชุดผู้ใช้

7 เหตุผลที่ Arduino เป็นที่ต้องการในทุกวันนี้

  1. มีราคาไม่แพง
  2. มาพร้อมกับคุณสมบัติฮาร์ดแวร์โอเพนซอร์สซึ่งช่วยให้ผู้ใช้สามารถพัฒนาชุดของตนเองโดยใช้ชุดที่มีอยู่แล้วเป็นแหล่งอ้างอิง
  3. ซอฟต์แวร์ Arduino เข้ากันได้กับระบบปฏิบัติการทุกประเภทเช่น Windows, Linux และ Macintosh เป็นต้น
  4. นอกจากนี้ยังมาพร้อมกับคุณสมบัติซอฟต์แวร์โอเพนซอร์สซึ่งช่วยให้นักพัฒนาซอฟต์แวร์ที่มีประสบการณ์สามารถใช้โค้ด Arduino เพื่อผสานกับไลบรารีภาษาโปรแกรมที่มีอยู่และสามารถขยายและแก้ไขได้
  5. ใช้งานง่ายสำหรับผู้เริ่มต้น
  6. เราสามารถพัฒนาโครงการที่ใช้ Arduino ซึ่งสามารถเป็นแบบเดี่ยวหรือโครงการที่เกี่ยวข้องกับการสื่อสารโดยตรงกับซอฟต์แวร์ที่โหลดในคอมพิวเตอร์
  7. มาพร้อมกับข้อกำหนดที่ง่ายดายในการเชื่อมต่อกับ CPU ของคอมพิวเตอร์โดยใช้การสื่อสารแบบอนุกรมผ่าน USB เนื่องจากมีพลังงานในตัวและวงจรรีเซ็ต

นี่คือแนวคิดพื้นฐานเกี่ยวกับ Arduino คุณสามารถใช้งานได้หลายประเภท ตัวอย่างเช่นในแอพพลิเคชั่นที่เกี่ยวข้องกับการควบคุมแอคชูเอเตอร์บางตัวเช่นมอเตอร์เครื่องกำเนิดไฟฟ้าโดยอาศัยอินพุตจากเซ็นเซอร์

เครดิตรูปภาพ:

  • Arduino Pin Diagram จาก Flickr