- ส่วนประกอบที่ต้องการ:
- วิศวกรรมย้อนกลับ:
- คำอธิบายการทำงาน:
- การเชื่อมต่อวงจร:
- โปรแกรม Arduino:
- การใช้การประมวลผลเพื่อสร้างแอป Android:
ในโครงการนี้เราจะใช้วิทยุ FM ที่มีอยู่ซึ่งไปซ่อมแซมเป็นเวลานานมาแล้วที่จะแปลงเป็นใช้โทรศัพท์สมาร์ทแบบไร้สายควบคุมวิทยุ FM, ด้วยความช่วยเหลือของArduino และการประมวลผล
เราสามารถแปลงอุปกรณ์อิเล็กทรอนิกส์ที่ดำเนินการด้วยตนเองให้เป็นอุปกรณ์อัจฉริยะโดยใช้ขั้นตอนเดียวกัน อุปกรณ์อิเล็กทรอนิกส์ทุกชิ้นทำงานด้วยความช่วยเหลือของสัญญาณ สัญญาณเหล่านี้อาจอยู่ในรูปของแรงดันไฟฟ้าหรือกระแส สัญญาณสามารถถูกกระตุ้นได้ด้วยตนเองด้วยความช่วยเหลือของการโต้ตอบกับผู้ใช้โดยตรงหรือด้วยความช่วยเหลือของอุปกรณ์ไร้สาย
ในตอนท้ายของโครงการนี้เราจะสามารถที่จะแปลงที่สุดของอุปกรณ์อิเล็กทรอนิกส์ของเราร่วมกันเช่นวิทยุซึ่งทำงานบนปุ่มเป็นแกดเจ็ตสมาร์ทแบบไร้สายซึ่งสามารถควบคุมโดยสมาร์ทโทรศัพท์ผ่านบลูทู ธเพื่อให้บรรลุเป้าหมายนี้เราจะต้องทำสองสิ่งหลัก
1. คาดคะเนว่าสัญญาณถูกสร้างขึ้นในระบบปุ่มกลไกที่มีอยู่อย่างไร
2. หาวิธีเรียกสัญญาณเดียวกันด้วยความช่วยเหลือของวงจรเสริมขนาดเล็ก
เริ่มกันเลย…
ส่วนประกอบที่ต้องการ:
สำหรับโปรเจ็กต์นี้คุณสามารถเลือกอุปกรณ์อิเล็กทรอนิกส์ที่เก่าหรือไม่ได้ใช้เช่นวิทยุทีวีเครื่องเล่นซีดีหรือโฮมเธียเตอร์ได้ ส่วนประกอบที่แท้จริงอาจแตกต่างกันไปตามอุปกรณ์ที่คุณเลือก แต่การที่จะทำให้มันไร้สายเราจะต้องไมโครคอนโทรลเลอร์ซึ่งเป็นArduinoที่นี่และสื่อไร้สายซึ่งเป็นโมดูลบลูทู ธ HC-05
วิศวกรรมย้อนกลับ:
เอาล่ะตอนนี้ฉันได้เลือกเครื่องเล่นวิทยุ FMรุ่นเก่าที่หยุดทำงานไปนานแล้ว และเมื่อเปิดดูก็พบว่าปุ่มต่างๆหยุดทำงานแล้ว นี่จะเป็นอุปกรณ์ที่สมบูรณ์แบบสำหรับเราในการทำงานเพราะเราไม่ต้องใช้ปุ่มอีกต่อไปเพราะเรากำลังจะทำให้มันไร้สายอย่างสมบูรณ์ ภาพด้านล่างแสดงวิทยุที่ฉันเปิด
นี่คือการตั้งค่าปุ่มของวิทยุของฉัน (ภาพด้านบน) ดังที่คุณเห็นมีแปดปุ่มที่วิทยุรับอินพุต คุณยังสามารถสังเกตได้ว่าบนบอร์ดมีตัวต้านทานแปดตัว สรุปอะไรได้จากสิ่งนี้…? ใช่ตัวต้านทานแต่ละตัวเชื่อมต่อกับสวิตช์ ทีนี้มาดูที่ด้านหลังของบอร์ด:
คุณสามารถติดตามการเชื่อมต่อได้ด้วยความช่วยเหลือของราง PCB แต่ถ้าคุณยังสับสนคุณสามารถใช้มิลลิเมตรในการเชื่อมต่อให้มากขึ้นและหาวงจร บอร์ดนี้มีขั้วสามขั้ว (วงกลมสีแดง) ซึ่งให้สัญญาณไปยังบอร์ดวิทยุ FM หลัก หมุดเหล่านี้ถูกทำเครื่องหมายเป็น S1, S2 และ 1.7V ซึ่งหมายความว่าแรงดันไฟฟ้าคงที่ 1.7 โวลต์จะถูกส่งจากบอร์ดหลักไปยังบอร์ดนี้และเมื่อผู้ใช้กดปุ่มใด ๆ จะมีแรงดันตกคร่อมตัวต้านทานที่เกี่ยวข้องและผ่านพิน S1 และ S2 แรงดันไฟฟ้าผันแปรจะถูกส่งกลับ นี่คือการทำงานของปุ่มส่วนใหญ่ในอุปกรณ์อิเล็กทรอนิกส์ของเรา ตอนนี้เนื่องจากเราได้หาวิธีการทำงานแล้วเรามาทำให้มันไร้สายกันเถอะ
คำอธิบายการทำงาน:
ตอนนี้เพื่อให้เป็นแบบไร้สายเราต้องให้แรงดันไฟฟ้าระหว่าง 0 - 1.7V ใน S1และกราวด์บอร์ดหลัก มีไม่กี่วิธีโดยใช้ซึ่งคุณสามารถเลียนแบบการตั้งค่าปุ่มเหล่านี้โดยใช้ไมโครคอนโทรลเลอร์
เราสามารถใช้โพเทนชิออมิเตอร์แบบดิจิตอลและทำให้มีความต้านทานบนบอร์ดตามที่ตั้งโปรแกรมไว้และเมื่อจำเป็น แต่สิ่งนี้จะทำให้สิ่งต่างๆซับซ้อนและมีค่าใช้จ่ายสูงเนื่องจากการทำงานกับ Digipot ต้องใช้ SPI และ Digipots นั้นมีค่าใช้จ่ายสูง
นอกจากนี้เรายังสามารถใช้เครือข่ายตัวต้านทานทรานซิสเตอร์ซึ่งตัวต้านทานแต่ละตัวที่มีค่าแตกต่างกันจะถูกกระตุ้นโดยทรานซิสเตอร์ซึ่งจะถูกควบคุมโดยไมโครคอนโทรลเลอร์เอง แต่การทำเช่นนี้อีกครั้งสำหรับแปดปุ่มวงจรจะซับซ้อน
วิธีง่ายๆในการทำเช่นนี้คือสร้างแรงดันไฟฟ้าผันแปรที่ต้องการโดยตรงจากไมโครคอนโทรลเลอร์และป้อนไปยังหมุดสัญญาณ น่าเศร้าที่ Arduino มีเพียง ADC และไม่มี DAC แต่โชคดีที่เรามี PWM ใน Arduino PWM นี้สามารถสร้างขึ้นเพื่อทำหน้าที่เป็นแรงดันไฟฟ้าผันแปรได้ด้วยความช่วยเหลือของRC Low Pass Filter แบบธรรมดา
ตัวกรองความถี่ต่ำแสดงไว้ด้านบนส่วนประกอบสำคัญที่นี่คือตัวเก็บประจุซึ่งจะกราวด์สัญญาณพัลซิ่งทั้งหมดและ DC บริสุทธิ์จะถูกส่งเป็นเอาต์พุต ดังนั้นสัญญาณ PWM จาก Arduino จะต้องถูกส่งผ่านตัวกรองความถี่ต่ำจากนั้นส่งไปยังแผงสัญญาณของวิทยุ FM
วงจรนั้นง่ายต่อการสร้างบนกระดานดอทดังที่แสดงไว้ด้านบน ที่นี่สายสีดำมีไว้สำหรับกราวด์และสายสีน้ำเงินและสีเขียวทางด้านซ้ายจะถูกส่งไปยังบอร์ด FM S1 (สีเขียว) และ S2 (สีน้ำเงิน) ของเราและสายทางด้านขวาจะรับสัญญาณ PWM จาก Pin 9 & 10 ของ Arduino (ดูภาพด้านบน) และส่งผ่านไปยังบอร์ด FM ผ่านตัวกรองความถี่ต่ำ โมดูลบลูทู ธ ใช้พิน 11 และ 12 เป็น Rx และ TX
ตอนนี้เราสามารถสร้างสัญญาณ PWM จาก 0 โวลต์ถึง 1.7 โวลต์และค้นหาว่าวิทยุของเราทำงานอย่างไรสำหรับระดับแรงดันไฟฟ้าที่แตกต่างกัน ขั้นตอนต่อไปคือการทำให้สิ่งนี้ไร้สาย
การเชื่อมต่อวงจร:
นี้แสดงให้เห็นวงจรการตั้งค่าทั้งหมดของความถี่ต่ำตัวกรองและ HC-05 บลูทู ธ เชื่อมต่อกับโมดูลเมกะ Arduino สำหรับบลูทู ธ ควบคุมวิทยุ
โปรแกรม Arduino:
โปรแกรมสำหรับ Arduino มีให้ในส่วนรหัสด้านล่าง คุณยังสามารถทดสอบช่วง Variable Voltage สำหรับอุปกรณ์อิเล็กทรอนิกส์ของคุณได้โดยใช้โปรแกรมนี้ที่นี่
ก่อนที่เราจะเริ่มสร้างแอพ Android สำหรับวิทยุของเราขอแนะนำให้ทดสอบคุณสมบัติไร้สายด้วยความช่วยเหลือของแอพ Terminal Bluetooth Monitor ดังที่แสดงในวิดีโอด้านล่าง ตรวจสอบบทความนี้เพื่อกำหนดค่าแอพ Bluetooth Terminal บน Arduino เมื่อเรามั่นใจในการใช้งานแล้วเราสามารถเริ่มสร้างแอป Android ของเราเองได้
การใช้การประมวลผลเพื่อสร้างแอป Android:
มันเยี่ยมมากที่จะทำให้อุปกรณ์ของเราไร้สาย แต่เรายังสามารถเพิ่มความเป็นส่วนตัวให้กับอุปกรณ์ของเราได้ด้วยการสร้างแอพ Android ของเราเอง เราสามารถควบคุมอุปกรณ์ตามเวลาที่กำหนดโดยอัตโนมัติหรือควบคุมตามการปลุกของคุณ คุณยังสามารถทำให้วิทยุเล่นช่องโปรดได้เมื่อกลับถึงบ้าน จินตนาการคือขีด จำกัด ของคุณที่นี่ แต่ตอนนี้เราจะสร้างอินเทอร์เฟซผู้ใช้ที่เรียบง่ายโดยใช้การประมวลผลแอพนี้จะมีปุ่มเพียงไม่กี่ปุ่มที่คุณสามารถควบคุมวิทยุ FM ของคุณได้
การประมวลผล เป็นซอฟต์แวร์โอเพ่นซอร์สที่ศิลปินใช้สำหรับการออกแบบกราฟิก ซอฟต์แวร์นี้ใช้เพื่อพัฒนาซอฟต์แวร์และแอปพลิเคชัน Android
รหัสการประมวลผลสำหรับแอป Android เพื่อควบคุมวิทยุ FM ไร้สายมีให้ที่นี่:
- รหัสประมวลผลแอป Android เพื่อควบคุมวิทยุ FM
ก่อนอื่นเราสร้างแอพนี้บนพีซีในโหมด JAVAเพื่อทดสอบอย่างถูกต้องนี่คือรหัสการประมวลผลสำหรับเดียวกัน คลิกขวาที่ไฟล์และคลิกที่ 'บันทึกลิงค์เป็น.. ' เพื่อดาวน์โหลดไฟล์รหัส จากนั้นเปิดไฟล์ในซอฟต์แวร์ "กำลังประมวลผล" และคลิกที่ปุ่ม "เรียกใช้" เพื่อตรวจสอบว่าจะมีลักษณะอย่างไรในโทรศัพท์ คุณต้องติดตั้งซอฟต์แวร์ "กำลังประมวลผล" เพื่อเปิดไฟล์ *.pde
เมื่อเราทดสอบ App ในโหมด JAVA แล้วเราสามารถแปลงเป็นโหมด Androidได้อย่างง่ายดายโดยเปลี่ยนเป็นแท็บ Android ที่มุมขวาบนของหน้าต่างการประมวลผล เพื่อให้โทรศัพท์ Android ของเราเปิดบลูทู ธ และเชื่อมต่อกับโมดูล HC-05 ของเราโดยอัตโนมัติเราจำเป็นต้องเพิ่มรหัสต่อไปนี้ในโปรแกรม Javaที่มีอยู่ของเราเพื่อให้เป็นแอป Android เราได้ให้รหัส Android เต็มในลิงค์ด้านบนแล้วดังนั้นคุณสามารถใช้งานได้โดยตรง
ด้านล่างนี้คือไฟล์ส่วนหัวบางไฟล์เพื่อเปิดใช้งานฟังก์ชัน Bluetooth:
นำเข้า android.content.Intent; นำเข้า android.os.Bundle; นำเข้า ketai.net.bluetooth. *; นำเข้า ketai.ui. *; นำเข้า ketai.net. *; นำเข้า android.bluetooth.BluetoothAdapter; นำเข้า android.view.KeyEvent;
ด้านล่างนี้สื่อสารกับสายโทรศัพท์ของเราอะแดปเตอร์บลูทู ธ โดยใช้ Ketai ห้องสมุดและเราตั้งชื่ออะแดปเตอร์ของเราเป็นบาท
BluetoothAdapter บลูทู ธ = BluetoothAdapter.getDefaultAdapter (); KetaiBluetooth bt;
ด้านล่างส่วนหนึ่งของรหัสจะเรียกคำขอให้ผู้ใช้ขอให้เปิดบลูทู ธ เมื่อเริ่มต้นแอป
// ในการเริ่ม BT เมื่อเริ่มต้น ********* ถือเป็นโมฆะ onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); bt = ใหม่ KetaiBluetooth (นี้); } โมฆะ onActivityResult (int requestCode, int resultCode, Intent data) {bt.onActivityResult (requestCode, resultCode, data); } // **********
ที่นี่เราแนะนำแอพ Android ของเราว่าเราต้องเชื่อมต่อกับอุปกรณ์ Bluetooth ใด บรรทัด bt.connectToDeviceByName (การเลือก); คาดหวังชื่ออุปกรณ์จากฟังก์ชันการตั้งค่าของเรา เนื่องจากอุปกรณ์ Bluetooth ของเรามีชื่อว่า 'HC-05' จึงมีการเพิ่มบรรทัดด้านล่างในการตั้งค่า ชื่อนี้จะแตกต่างกันไปตามชื่อโมดูลบลูทู ธ ของคุณ
// เพื่อเลือกอุปกรณ์บลูทู ธ ********** เป็นโมฆะ onKetaiListSelection (KetaiList klist) {String selection = klist.getSelection (); bt.connectToDeviceByName (การเลือก); // กำจัดรายการตอนนี้ klist = null; } // **********
bt.connectToDeviceByName ("HC-05");
คุณสามารถทำการเปลี่ยนแปลงเหล่านี้ในรหัสการประมวลผลสำหรับพีซี (โหมด Java) หรือสามารถใช้รหัสการประมวลผล Android ของเราโดยตรงที่ระบุในลิงค์ด้านบน จากนั้นเชื่อมต่อโทรศัพท์ของคุณเข้ากับแล็ปท็อปโดยตรงโดยใช้สายเคเบิลข้อมูลและเปิดใช้งานการดีบัก USBบนโทรศัพท์ของคุณ ตอนนี้คลิกที่ปุ่ม Play บนหน้าต่างการประมวลผลในพีซีแอปพลิเคชันจะถูกติดตั้งโดยตรงบนโทรศัพท์ Android ของคุณและจะเปิดขึ้นโดยอัตโนมัติ มันง่ายขนาดนั้นไปลองเลย
ภาพด้านล่างแสดงถึง UI แอปพลิเคชัน Android ของเราพร้อมกับหน้าต่างการเข้ารหัส ดูวิดีโอเพื่อทำความเข้าใจและเรียกใช้โค้ดในโทรศัพท์ Android รวมถึงในคอมพิวเตอร์
เพียงเท่านี้เราก็ได้เปลี่ยนวิทยุ FM เครื่องเก่าของเราให้กลายเป็นอุปกรณ์ทันสมัยไร้สายที่สามารถควบคุมได้ด้วยแอปพลิเคชัน Android ของเรา ฉันหวังว่านี่จะช่วยให้ผู้คนสามารถทำงานได้ แต่หากคุณต้องการคำแนะนำเช่นเคยคุณสามารถใช้ส่วนความคิดเห็นและเรายินดีที่จะช่วยเหลือคุณ