- Vereiste componenten:
- Reverse engineering:
- Werkende uitleg:
- Circuitverbindingen:
- Arduino-programma:
- Verwerking gebruiken om een Android-app te maken:
In dit project zullen we een bestaande FM-radio gebruiken die lang geleden gerepareerd is, om deze met behulp van Arduino en Processing om te bouwen tot een Smart Wireless FM-radio die wordt bestuurd met behulp van de telefoon.
We kunnen elk handmatig bediend elektronisch apparaat volgens dezelfde procedure omzetten in een smart device. Elk elektronisch apparaat werkt met behulp van signalen. Deze signalen kunnen in termen van spanningen of stromen zijn. De signalen kunnen handmatig worden geactiveerd met behulp van directe gebruikersinteractie of met behulp van een draadloos apparaat.
Aan het einde van dit project zullen we in staat zijn om de meeste van onze gewone elektronische apparaten, zoals een radio die op knoppen werkt, om te zetten in een slimme draadloze gadget die kan worden bediend met een smartphone via Bluetooth. Om dit te bereiken zullen we twee belangrijke dingen moeten doen.
1. Voorspel hoe de signalen worden gegenereerd in het bestaande mechanische knopensysteem.
2. Zoek een manier om hetzelfde signaal te activeren met behulp van een klein extra circuit.
Dus laten we beginnen…
Vereiste componenten:
Voor dit project kan een oud of ongebruikt elektronisch apparaat zoals een radio, tv, cd-speler of thuisbioscoop worden geselecteerd. De feitelijke componenten kunnen variëren, afhankelijk van het apparaat dat u selecteert. Maar om het draadloos te maken, hebben we een microcontroller nodig die hier een Arduino is en een draadloos medium, een HC-05 Bluetooth-module.
Reverse engineering:
Oké, dus nu heb ik een oude FM-radiospeler uitgekozen die lang geleden niet meer werkte. En toen ik het opende, merkte ik dat de knoppen erop niet meer werkten. Dit zal voor ons een perfect apparaat zijn om te werken, omdat we de knoppen niet meer nodig hebben, omdat we het volledig draadloos gaan maken. De onderstaande afbeelding toont de radio die ik heb geopend.
Dit was de knopopstelling van mijn radio (bovenstaande foto). Zoals je kunt zien zijn er acht knoppen van waaruit de radio input krijgt. Je merkt ook dat er acht weerstanden op het bord zitten. Wat kun je hieruit concluderen…? Ja, elke resister is verbonden met een schakelaar. Laten we nu eens kijken naar de achterkant van het bord:
Je kunt de verbinding traceren met behulp van de PCB-sporen, maar als je nog steeds in de war bent, kun je je millimeter in connectiviteit meer gebruiken en het circuit uitzoeken. Dit bord heeft drie aansluitingen (rood omcirkeld) die signalen doorgeven aan het hoofd FM-radiobord. Deze pinnen waren gemarkeerd als S1, S2 en 1.7V. Dit betekent dat een constante spanning van 1,7 Volt van het moederbord naar dit bord wordt gestuurd en als de gebruiker op een willekeurige knop drukt, zal er een spanningsval zijn over de corresponderende weerstand en via de pinnen S1 en S2 wordt een variabele spanning teruggestuurd. Dit is hoe de meeste knoppen in onze elektronische apparaten werken. Nu we hebben ontdekt hoe het werkte, laten we het draadloos maken.
Werkende uitleg:
Om het nu draadloos te maken, hoeven we alleen maar een spanning tussen 0 - 1,7V over de S1 te geven en het moederbord te aarden. Er zijn een paar manieren waarop u deze knopconfiguratie kunt nabootsen met een microcontroller.
We kunnen een digitale potentiometer gebruiken en ervoor zorgen dat deze de weerstand op het bord levert zoals geprogrammeerd en wanneer dat nodig is. Maar dit zal de zaken ingewikkeld en kostbaar maken, aangezien het werken met Digipot SPI vereist en Digipots kostbaar zijn.
We kunnen ook een transistorweerstandsnetwerk gebruiken waarin elke weerstand met verschillende waarden wordt geactiveerd door een transistor die op zijn beurt wordt aangestuurd door de microcontroller zelf. Maar nogmaals, om dit voor acht knoppen te doen, wordt het circuit ingewikkeld.
De eenvoudige manier om dit te doen, is door de vereiste variabele spanning rechtstreeks van de microcontroller te genereren en naar de signaalpinnen te leiden. Helaas heeft Arduino alleen ADC en geen DAC. Maar gelukkig hebben we PWM in Arduino. Deze PWM kan worden gemaakt om te fungeren als een variabele spanning met behulp van een eenvoudig RC Low Pass Filter.
Een laagdoorlaatfilter wordt hierboven getoond, het belangrijkste onderdeel hier is de condensator die het hele pulserende signaal zal aarden en een zuivere DC wordt als uitvoer verzonden. Dus de PWM-signalen van de Arduino moeten door een laagdoorlaatfilter worden gestuurd en vervolgens naar het signaalbord van de FM-radio worden gestuurd.
Het circuit is eenvoudig op te bouwen op een puntbord zoals hierboven weergegeven. Hier is de zwarte draad voor aarde en de blauwe en groene draden aan de linkerkant worden naar onze FM-kaarten S1 (groen) en S2 (blauw) gestuurd, en de draden aan de rechterkant ontvangen PWM-signalen van Arduino's Pin 9 & 10 (zie afbeelding hierboven) en passeren naar het FM-bord via een laagdoorlaatfilter. De Bluetooth-module gebruikt pinnen 11 en 12 als Rx en TX.
Nu kunnen we PWM-signalen genereren van 0 volt tot 1,7 volt en ontdekken hoe onze radio zich gedraagt voor verschillende spanningsniveaus. De volgende stap is om dit ding draadloos te maken.
Circuitverbindingen:
Dit schema toont de volledige installatie van het laagdoorlaatfilter en de HC-05 Bluetooth-module die is aangesloten op Arduino Mega voor Bluetooth-gestuurde FM-radio.
Arduino-programma:
Programma voor de Arduino wordt gegeven in de sectie Code hieronder. U kunt ook het variabele spanningsbereik voor uw elektronische apparaat testen door dit programma hier te gebruiken.
Voordat we beginnen met het bouwen van onze eigen Android-app voor onze radio, is het raadzaam om de draadloze functie te testen met behulp van een Terminal Bluetooth Monitor-app, zoals weergegeven in onderstaande video. Raadpleeg dit artikel om de Bluetooth Terminal-app op Arduino te configureren. Als we eenmaal zeker zijn van de werking, kunnen we beginnen met het maken van onze eigen Android-app.
Verwerking gebruiken om een Android-app te maken:
Het is gaaf om ons apparaat draadloos te maken, maar we kunnen ook een persoonlijk tintje aan ons apparaat toevoegen door onze eigen Android-app te maken. We kunnen het apparaat bedienen op automatisch geplande tijden of het bedienen op basis van uw wekalarmen. U kunt uw radio zelfs uw favoriete kanaal laten afspelen als u thuiskomt. Verbeelding is hier uw limiet. Maar voor nu zullen we een eenvoudige gebruikersinterface maken met behulp van verwerking, deze app heeft maar een paar knoppen waarmee je je FM-radio kunt bedienen.
Processing is open source-software die door kunstenaars wordt gebruikt voor grafisch ontwerpen. Deze software wordt gebruikt om software en Android-applicaties te ontwikkelen.
De verwerkingscode voor de Android-app om deze draadloze FM-radio te bedienen, wordt hier gegeven:
- Verwerkingscode voor Android-app om de FM-radio te bedienen
Eerst hebben we deze app op pc in JAVA-modus gebouwd, om hem goed te testen, hier is de verwerkingscode voor hetzelfde. Klik er met de rechtermuisknop op en klik op 'Link opslaan als…' om het codebestand te downloaden. Open vervolgens het bestand in de 'Verwerkingssoftware' en klik op de knop 'Uitvoeren' om te controleren hoe het eruit zal zien in de telefoon. U moet 'Verwerkingssoftware' installeren om *.pde-bestanden te openen.
Nadat we de app in JAVA-modus hebben getest, kunnen we deze eenvoudig naar Android-modus converteren door naar het Android-tabblad in de rechterbovenhoek van het verwerkingsvenster te gaan. Om ervoor te zorgen dat onze Android-telefoon zijn Bluetooth inschakelt en automatisch verbinding maakt met onze HC-05-module, moeten we de volgende codes aan ons bestaande Java-programma toevoegen om er een Android-app van te maken. We hebben de volledige Android-code al in bovenstaande link verstrekt, zodat u deze direct kunt gebruiken.
Hieronder staan enkele koptekstbestanden om Bluetooth-functies in te schakelen:
importeer android.content.Intent; importeer android.os.Bundle; import ketai.net.bluetooth. *; importeer ketai.ui. *; importeer ketai.net. *; importeer android.bluetooth.BluetoothAdapter; importeer android.view.KeyEvent;
Onderstaande lijnen communiceert met de Bluetooth-adapter van onze telefoon met behulp van de Ketai- bibliotheek en we noemen onze adapter bt .
BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter (); KetaiBluetooth bt;
Onderstaand deel van de code activeert een verzoek aan de gebruiker met het verzoek om Bluetooth in te schakelen bij het opstarten van de app.
// Om BT te starten bij het starten ********* void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); bt = nieuwe KetaiBluetooth (dit); } void onActivityResult (int requestCode, int resultCode, Intent data) {bt.onActivityResult (requestCode, resultCode, data); } // **********
Hier instrueren we onze Android-app met welk Bluetooth-apparaat we verbinding moeten maken. De regel bt.connectToDeviceByName (selectie); verwacht een apparaatnaam van onze setup-functie. Omdat ons Bluetooth-apparaat de naam 'HC-05' heeft, wordt de onderstaande regel toegevoegd in de installatie. Deze naam is afhankelijk van de naam van uw Bluetooth-module.
// Om een bluetooth-apparaat te selecteren ********** void onKetaiListSelection (KetaiList klist) {String selection = klist.getSelection (); bt.connectToDeviceByName (selectie); // gooi de lijst voorlopig weg klist = null; } // **********
bt.connectToDeviceByName ("HC-05");
U kunt deze wijzigingen aanbrengen in Verwerkingscode voor pc (Java-modus) of u kunt direct onze Android-verwerkingscode gebruiken die in de bovenstaande link wordt gegeven. Verbind vervolgens uw telefoon rechtstreeks met uw laptop met behulp van de datakabel en schakel USB-foutopsporing op uw telefoon in. Klik nu op de afspeelknop in het verwerkingsvenster op de pc, de applicatie wordt rechtstreeks op je Android-telefoon geïnstalleerd en automatisch gestart. Het is zo eenvoudig, dus ga je gang en probeer het uit.
De onderstaande afbeelding vertegenwoordigt onze Android-applicatie-gebruikersinterface samen met het coderingsvenster. Bekijk de video om de code te begrijpen en uit te voeren op zowel Android-telefoon als op de computer.
Dat is het, we hebben onze oude FM-radio veranderd in een draadloze moderne gadget die kan worden bestuurd door onze Android-applicatie. Ik hoop dat dit mensen zal helpen om aan het werk te gaan, maar als je begeleiding nodig hebt, zoals altijd, kun je het commentaargedeelte gebruiken en we zullen je graag helpen.