FM rádió RDS (rádiós szöveg), BT vezérlés és töltőalap: 5 lépés
FM rádió RDS (rádiós szöveg), BT vezérlés és töltőalap: 5 lépés
Anonim
FM rádió RDS (rádiós szöveg), BT vezérlő és töltőaljzattal
FM rádió RDS (rádiós szöveg), BT vezérlő és töltőaljzattal
FM rádió RDS (rádiós szöveg), BT vezérlő és töltőalap
FM rádió RDS (rádiós szöveg), BT vezérlő és töltőalap

Jó napot, Ez a második "Instructables". Mivel szeretek nem túl hasznos dolgokat készíteni, itt az utolsó projektem:

Ez az FM -rádió rádiós szöveggel, töltőbázissal, és Bluetooth -on és Android APP -n keresztül figyelhető

Ezért bemutatom Önnek az Arduino részt, a Rádiós szöveg részt, majd az MIT App feltaláló részét (csak így vagyok elég képzett építeni és Android APP)

A tápfeszültség 10, 8 volt, váltakozó áramú tápegység és 9,6 elemmel, a maximális teljesítmény 2x 1,5/1,25 watt RMS, ami széles körben elegendő

Az RMS (gyökérnégyzet) teljesítmény az igazi teljesítmény, nem olyan, mint a többi nagy szám, amelyeket wattos zene vagy csúcsteljesítmény vagy bármi más árusítanak.

Gondolom, 1,5 Wattos RMS -t lehet eladni 8 W -os némelyik üzletben !!!!!!

Először a szükséges összetevők:

Fő tábla:

1x Arduino Nano

1x SI4703 FM rádiómodul a Sparkfun -tól vagy azzal egyenértékű (5V -os tápellátás és 3.3V I2C, 3 pólusú csatlakozóval, amely antennaként használható)

1x HC-06 Bluetooth modul (figyelmeztetve, hogy az új szoftver 3.0-s verziója teljesen különböző parancsokat tartalmaz (néhány megjegyzést teszek a kódba).

1x 4csatornás szintváltó 3.3 5 V

1x MC7805 5v DC átalakító

1x 2200 µF 25V kondenzátor

2x 1N5404 3 Amp diódák

2x 2N2222 tranzisztor

1x 1Kohm ellenállás

1x 47 Ohm ellenállás

2x 3,3 KOhm ellenállás (I2C busz felhúzáshoz)

3x 330 Ohm ellenállás (a LED -ekhez)

2x 6,8 KOhm ellenállás

1x 3,9 KOhm ellenállás

Előlap

1x 20X4 LCD I2C busz

10x 680 Ohm ellenállások

1x piros LED (nem volt több zöld !!) a tápegységhez

1x sárga LED az akkumulátor üzemmódhoz

1x kék LED a BT csatlakozáshoz

4x (ON) -OFF- (ON) kapcsoló (például elektromos autóablak esetén)

2x nyomógomb

1x BE/KI kapcsoló

Egyéb komponensek a rádióhoz:

2x 100W 10CM 8 Ohm HP

1x 1 m -es kihúzható antenna (körülbelül 75 cm a jó hosszúság az FM -hez Európában és az Egyesült Államokban)

1x telefon dugó, amellyel a töltőbázis érintkezőit készítettem

1x 1N5404 3 Amp dióda (az akkumulátor érintkezőjén, hogy elkerülje a füstöt, ha zavar a földdel vagy 12V érintkezővel)

1x 2X20 wattos erősítő (minden sztereó erősítő 12V -ig elfér) a 4 euróért vásárolt TDA2020 alapján

1x 8XAA elemcsatoló (legalább 9,6 V)

Körülbelül 10 mm -es és 4 mm -es rétegelt lemez a dobozhoz

Töltési alap:

1x 12V 3Amp tápegység

1x kis 3 számjegyű /3 vezetékes voltmérő

3 érintkező (a telefon csatlakozójából készült)

1x 1N5404 3 Amp dióda (12V érintkezőn)

2 karos kapcsoló (a hálózati tápegység bekapcsolásához, amikor a rádió a töltőállomáson van)

1x BE/KI kapcsoló (a töltőbázis kikapcsolásához, ha szükséges)

Mintegy 10 mm és 4 mm rétegelt lemez az alaphoz

Összességében a rétegelt lemezekkel együtt nem haladja meg a 70 eurót

1. lépés: A 4703 rádióalkatrész

Először is egy módosítás:

A modul állítólag a headset kábelét használja antennaként, a projektemben ez nem hasznos, ezért először egy kis módosítást kell végrehajtanunk a külső antenna csatlakoztatásához

Ebben a modulban a 3 pólusú jack föld nem közvetlenül a földhöz van csatlakoztatva, hanem induktivitáson keresztül (az FM frekvenciák leállításához) és egy kondenzátoron keresztül, amely az FM frekvenciákat az SI4703 antenna bemenetéhez csatlakoztatja.

A legjobb módszer tehát az, ha az antennát közvetlenül az aljzat földelőcsapjához csatlakoztatja, és két kábelt forraszt az audio kimenethez

Kép
Kép

Annak érdekében, hogy megakadályozzam a hangokat (különösen a Bluetooth -ból), az FM modult egy kis műanyag dobozba tettem, amely rézszalaggal volt védve a földhöz

Kép
Kép

Az RDS/rádiós szöveg protokoll:

Először is szeretnék köszönetet mondani Nathan Seidle -nek, mivel teljes mértékben inspirált a 2011. júniusi "TEST_FM" című programja.

És ahogy megbeszéltük, nagyon szívesen fizetek neki egy sört, ha valamelyik nap eltéved a kis falumban, Bretagne mély végén !!

Sok programját használtam, mivel nem akartam használni a meglévő könyvtárakat, amelyek egy kicsit túl nagyok a szegény Nano memóriaterület miatt, és azért is, mert mindig jobb mélyen belemerülni egy komponens lehetőségeibe, közvetlenül belevetve magukat a nyilvántartásokat

A fő módosítás, amit tettem, az RDS lekérdezés

Kihasználtam a lehetőséget, hogy megszakítást indítsak a GPI02 pin -n az RDSIEN bit és a GPIO2 értékének 01 -re állításával

Ez interuptot vált ki a nano 3. érintkezőjén

Ez megakadályozza az RDS regiszter lekérdezését, mivel csak akkor indítja el a Rádiószöveg programot, ha a 4 karakteres rádiós szövegcsoport hiba nélkül elérhető (nem részletes mód)

A teljes rádiós szöveg eléréséhez legfeljebb 16 4 karakterblokkot kell összegyűjtenünk (a 2A vagy 2B csoport RDSC/RDSB regisztereit). Sok információt tettem be a programba, hogy elmagyarázzam, mit tettem.

Itt található a rádiószöveg adatregisztereinek leírása (RDSSA/RDSC)

Kép
Kép

az RDSSB regiszterben (2. blokk)

Az A3/0 4. értéke azt jelzi (szövegcsoport)

A B0 A (64 karakter) vagy B (32 karakter) szöveget jelöl (még soha nem látott használatban lévő B szöveget ………..)

A PT0 – PT4 a 4 karakter csoportjának indexe (0–15)

A PT5 -öt A/B szövegjelzőként kell használni (ez azt jelenti, hogy "ez egy új szöveg"), de a rádióállomástól függően nem mindig használják így, ezért nem használható a rádió szöveges programjában.

A rádiós szöveg 4 karaktere RDSSC és RDSSD -ben van (3. és 4. blokk)

Javaslom, hogy olvassa el az RDS protokollra vonatkozó nagyon érdekes dokumentumot a SI4703 => AN243 -ban a Silicon labs -ból

Visszaállítottam a SKMODE bitet is a POWERCFG regiszterben (lásd az SI4703 adatlapot), hogy a frekvenciatartományban maradjak, miközben csatornákat keresek

Az adatlap olvasása sokat segít a kód és az összes regiszterkezelés megértésében

2. lépés: A töltőalap

A töltőbázis
A töltőbázis
A töltőbázis
A töltőbázis
A töltőbázis
A töltőbázis

Nem sok mindent kell hozzáfűzni

A képek jobban tudnak beszélni.

Csak hozzáadott 1N5404 diódát a 12 voltos érintkezőhöz

1) a problémák elkerülése érdekében, ha az akkumulátor érintkezése megérinti a 12 voltos érintkezőt, amikor a rádiót az alapra helyezi (de ez soha nem történt meg)

2) a feszültségszint 10,8 voltra csökkentése (dióda is van az alaplapon), mivel az MC7805 kissé felmelegedhet, ha 12 V -ról 5 voltra 1 amper árammal megy (egy vasdarabot csavartam be hűtőbordaként) a 7805)

Hozzáadtam egy kisméretű, 3x7 szegmenses voltmérőt az akkumulátor töltöttségének jelzésére

Ez az eszköz 3 vezetékkel rendelkezik, hogy csökkentse a fogyasztást (több mint 1 mega ohm a mérővezetéken), ami lehetővé teszi, hogy a rádiót hosszú ideig a kikapcsolt alapon tartsa az akkumulátor lemerítése nélkül

Kép
Kép

2 karos kapcsoló használható a hálózati tápellátás kikapcsolására, amikor a rádió ki van kapcsolva az alapból (hogy ne legyen 12 V feszültség az érintkezőkön)

Kép
Kép

A doboz rétegelt lemezből készült (mielőtt festenék a képre), megengedem, hogy elképzelje, hogyan készítsen egy gyönyörű dobozt, mivel az enyém nem túl szexi !!!!!

Nagyon meglepődtem, de a töltőállomás jól működik, és soha nem dohányoztam, miközben ráhelyeztem a rádiót ………….

3. lépés: A doboz

A doboz
A doboz
A doboz
A doboz
A doboz
A doboz
A doboz
A doboz

Gondolom, bárki szeretne úgy csinálni, ahogy akar, követve művészi képességeit !!!!!

Mindenesetre rövidesen elmagyarázom, hogyan építhetek valamit, ami szörnyen hasonlít egy eszköztárhoz

Elöl és hátul 4 mm -es rétegelt lemezből vágva, 15x45 cm -es méretben

felül és alul 10 mm -es rétegelt lemez 15x45 cm

Az oldalak és a 2 belső válaszfal (2 2 hely a HP számára és a középső részek) 10 mm -es rétegelt lemez 13x13 cm

Az előlapon 2 x 10 cm -es lyukat készítettem a HP számára, és egy 14 x 14 négyzet alakú lyukat a feketére festett 15 x 15 mm -es 2 mm -es szerves üveg behelyezéséhez (hozzáadva egy átlátszó nyomtatott matricát a festés után, de a fekete miatt nem annyira olvasható) szín mögött)

2 lyukat csináltam a tetején:

az egyik a teljesítményerősítő potenciométeréhez (a szint beállításához, ha szükséges) és a hőteljesítményhez is

egy másik az antenna számára

a hátsó panelen 2 lyukat csináltam:

Az egyik az USB -csatlakozóhoz (közvetlenül a nano csatlakozóhoz)

Egy 16 mm -es levegőhűtés (a teljesítmény -erősítő potenciométerének 14 mm -es lyuka a felső léghűtés kimenetének megfelelően)

a fogantyú 12 mm -es feketére festett rézcsőből készül

A fenti kép összes alkotóeleme megtalálható a központi rekeszben (később az elemeket a bal oldali HP rekeszbe kellett helyeznem, mert túl közel volt a HC06 BT modulhoz a fő rekeszben)

Ez az

Persze kell valami szexibb is !!!!!

4. lépés: Az Arduino rész (vázlatok és kód)

Igyekeztem a lehető legtöbb információt beírni a program megjegyzései közé.

Néhány további információ

A Decode_TXT eljárást mind a Bluetooth, mind a kapcsolási eljárás használja

néhány kulcsszót mindkét eljárás használ

v+ => a hangerő növeléséhez

v- => leengedni

f+ => 100 Khz lépés gyakoriságának növelésére

f- => csökkenteni

su+=> keresd fel

sd-=> keresd le

prefu => növeli az előre kiválasztott csatornaszámot

prefd => csökkenés

hello => az Android APP küldte Bluetooth kapcsolat közben, a kód visszaküldi a rádió állapotát

bye => küldi az APP, amikor a BT szétkapcsol

pow => a rádió elküldte az alkalmazásnak tápegység üzemmódban (a töltőállomáson)

bat => akkumulátor üzemmódban

lb => küld, ha az akkumulátor töltöttségi szintje túl alacsony (kb. 8 volt)

A Bluetooth kommunikációt vezérlő hurok biztosítja:

Minden alkalommal, amikor az FM -rádió információt küld, az időzítő elindul, és várja az "OK" választ az Android APP -tól

3 hiba esetén (az időzítő lejárt) a BT linket a rádió megszakítja. (ez levágja a linket az Android oldalon is)

A másik oldalon

Amikor az alkalmazás parancsot küld, várja a rádió válaszát, hogy újabb parancsot küldjön.

A get_RT eljárás elindul, amikor az RDS jelző be van állítva (a 3. tűn történt megszakítás után)

itt a kód (link a GITHUB -hoz)

A sémák:

Az FM rádió alaplapja (valójában az SI4703 árnyékolt dobozban van):

Kép
Kép

Az előlap:

Kép
Kép

A töltés alapja:

Kép
Kép

A Fritzing fájlok linkjei:

FR RÁDIÓ alaplap

Előlap

Töltő alap

5. lépés: Az Android -alkalmazás

Az Android App
Az Android App
Az Android App
Az Android App

APP feltalálóval készült

itt vannak a GitHub linkjei

Rádió FM aia

Android APK

Az alkalmazás 2 óra időzítőt használ:

1) a bluetooth kommunikációhoz (100 ms)

2) az akkumulátor LED villogásához, ha a terhelés körülbelül 8 V (1000 ms)

Először a HC06 modult kell párosítania okostelefonjával vagy táblagépével.

A TinyDB -t használom a HC06 modul BT -címének mentéséhez, az első csatlakozáskor a BT -cím gomb engedélyezve lesz, és a listában ki kell választania a HC06 -ot (a magam részéről átneveztem a HC06 modult az FM_RADIO -ban)

Az alkalmazásban nem mindig a százalékot használtam az elem méretéhez, ezért az okostelefontól függően előfordulhatnak olyan nehézségek

Az enyém egy Galaxy Note 3, így elég nagy képernyő …….

Így jó időt töltöttem ennek a kicsi, de nagyon hatékony SI4703 felfedezésével.

És nagy örömmel töltöttem el ezt az oktatóanyagot

A következő projektemig

Viszontlátásra!!!

Ajánlott: