FM -radio, jossa on RDS (radioteksti), BT -ohjaus ja latausasema: 5 vaihetta
FM -radio, jossa on RDS (radioteksti), BT -ohjaus ja latausasema: 5 vaihetta
Anonim
FM -radio, RDS (radioteksti), BT -ohjaus ja latausasema
FM -radio, RDS (radioteksti), BT -ohjaus ja latausasema
FM -radio, RDS (radioteksti), BT -ohjaus ja latausasema
FM -radio, RDS (radioteksti), BT -ohjaus ja latausasema

Bonjour, Tämä on toinen "Instructables". Koska haluan tehdä ei kovin hyödyllisiä asioita, tässä on viimeinen projektini:

Tämä FM -radio, jossa on radioteksti ja jossa on latausasema ja jota voidaan seurata Bluetoothin ja Android -sovelluksen kautta

Siksi esittelen sinulle, Arduino -osan, radiotekstin osan ja sitten MIT -sovelluksen keksijäosan (tämä on ainoa tapa, jolla olen riittävän taitava rakentamaan ja Android -sovelluksen)

Kun syöttöjännite on 10; 8 volttia verkkovirralla ja 9,6 akulla, maksimiteho on 2x 1,5/1,25 wattia RMS, joka on laajalti riittävä

RMS (keskimääräinen neliö) -teho on todellinen teho, joka ei ole sama kuin muut suuret numerot, joita myydään, kuten wattimusiikkia tai huipputehoa tai jotain muuta)

Luulen, että 1,5 watin RMS voidaan myydä joissakin kaupoissa 8 wattina !!!!!!

Ensin tarvittavat komponentit:

Emolevy:

1x Arduino Nano

1x FM -radiomoduuli SI4703 Sparkfunilta tai vastaavalta (5 V virtalähde ja 3,3 V I2C 3 -napaisella liittimellä, jota voidaan käyttää antennina)

1x HC-06 Bluetooth-moduuli (varoitus uudesta ohjelmistoversiosta 3.0, jossa on täysin erilaiset komennot (laitoin joitain kommentteja koodiin).

1x 4 -kanavainen tasonvaihtaja 3.3 5 V

1x MC7805 5v DC -muunnin

1x 2200 µF 25V kondensaattori

2x 1N5404 3 ampeerin diodit

2x 2N2222 transistoria

1x 1Kohm vastus

1x 47 ohmin vastus

2x 3,3 Kohmin vastukset (I2C-väylän vetämiseen)

3x 330 ohmin vastukset (ledeille)

2x 6,8 Kohmin vastukset

1x 3,9 Kohmin vastus

Etupaneeli

1x 20X4 LCD I2C -väylä

10x 680 ohmin vastukset

1x punainen LED (minulla ei ollut enää vihreää !!) virtalähteelle

1x keltainen merkkivalo akkutilaa varten

1x sininen LED BT -liitännälle

4x (ON) -OFF- (ON) -kytkintä (kuten sähköauton ikkunassa)

2x painonapit

1x ON/OFF -kytkin

Muut radion komponentit:

2x 100 W 10 cm 8 ohmin HP

1x 1m pidennettävä antenni (noin 75 cm on hyvä pituus FM: lle Euroopassa ja Yhdysvalloissa)

1x puhelinpistoke, jota käytin latausalustan koskettimien tekemiseen

1x 1N5404 3 ampeerin diodi (akkukoskettimessa savun välttämiseksi, jos sotku maahan tai 12 V: n kosketin)

1x 2X20 wattinen tehovahvistin (mikä tahansa stereovahvistin sopii niin kauan kuin se on 12 V) perustuu TDA2020: een, joka on ostettu 4 eurolla

1x 8XAA paristokytkin (vähintään 9,6 V)

Laatikkoon noin 10 mm ja 4 mm vaneria

Latausalusta:

1x 12V 3Amp virtalähde

1x pieni 3 -numeroinen /3 -johtiminen volttimittari

3 kosketinta (tehty puhelimen pistokkeella)

1x 1N5404 3 ampeerin diodi (12 V: n liittimessä)

2 vipukytkintä (virtalähteen kytkemiseksi päälle, kun radio on latausalustalla)

1x ON/OFF -kytkin (latausalustan sammuttaminen tarvittaessa)

Pohjaksi noin 10 mm ja 4 mm vaneria

Yhteensä, vaneri mukaan lukien, se on enintään 70 €

Vaihe 1: 4703 -radion osa

Ensin muutos:

Moduulin on tarkoitus käyttää kuulokkeiden kaapelia antennina, projektissani se ei ole hyödyllinen, joten meidän on ensin tehtävä pieni muutos ulkoisen antennin liittämiseksi

Tässä moduulissa 3 -napaista pistokeliitäntää ei ole kytketty suoraan maahan vaan induktanssin (FM -taajuuksien pysäyttäminen) ja kondensaattorin avulla FM -taajuuksien liittämiseksi SI4703: n antennituloon.

Joten paras tapa on kytkeä antenni suoraan liittimen maadoitusnastaan ja juottaa kaksi kaapelia äänen ulostuloa varten

Kuva
Kuva

Äänen (etenkin Bluetoothin) aiheuttaman melun estämiseksi laitoin FM -moduulin pieneen muovilaatikkoon, joka on suojattu kuparinauhalla maadoitettuna

Kuva
Kuva

RDS/radiotekstiprotokolla:

Ensiksi haluan kiittää Nathan Seidleä, koska sain innoitukseni hänen kesäkuun 2011 ohjelmastaan "TEST_FM"

Ja kuten sovittu, maksan mielelläni hänelle oluen, jos hän jonain päivänä katoaa pieneen kylääni Bretagnen syvään päähän !!

Käytin paljon hänen ohjelmaansa, koska en halunnut käyttää olemassa olevia kirjastoja, jotka ovat hieman liian suuria köyhälle nanomuistitilalle, ja myös siksi, että on aina parempi mennä syvälle komponentin mahdollisuuksiin sukeltamalla suoraan rekisterit

Tärkein tekemäni muutos koskee RDS -kyselyä

Hyödyin mahdollisuudesta laukaista keskeytys GPI02 -nastalla asettamalla RDSIEN -bitin ja GPIO2 -arvon arvoksi 01

Tämä laukaisee keskeytyksen nanon nastassa 3

Tämä estää RDS -rekisterin kyselyn, koska se käynnistää radiotekstiohjelman vain, kun 4 -merkkinen radiotekstiryhmä on käytettävissä ilman virheitä (ei -sanallinen tila)

Jotta saisimme täydellisen radiotekstin, meidän on kerättävä enintään 16 neljän merkin lohkoa (rekisterit RDSC/RDSB ryhmästä 2A tai 2B). Laitoin ohjelmaan paljon tietoa selittääkseni, mitä tein.

Tässä on kuvaus radiotekstin tietorekistereistä (RDSSA/RDSC)

Kuva
Kuva

rekisterissä RDSSB (lohko 2)

A3/0: n arvo 4 osoittaa (tekstiryhmä)

B0 tarkoittaa A (64 merkkiä) tai B (32 merkkiä) tekstiä (ei ole koskaan nähnyt B -tekstiä käytössä …………………)

PT0 - PT4 on neljän merkin ryhmän indeksi (0-15)

PT5: tä tulisi käyttää tekstin A/B -ilmaisimena (eli "tämä on uusi teksti"), mutta sitä ei aina käytetä näin radioasemasta riippuen, joten sitä ei voi käyttää radiotekstiohjelmassa.

4 merkkiä radiotekstistä on RDSSC: ssä ja RDSSD: ssä (lohkot 3 ja 4)

Suosittelen lukemaan erittäin mielenkiintoisen asiakirjan, joka koskee RDS -protokollaa SI4703 => AN243: ssa Silicon labsista

Nollaan myös SKMODE -bitin POWERCFG -rekisterissä (katso SI4703 -tietolomake) pysyäksesi taajuusalueella etsiessäni kanavia

Tietokannan lukeminen auttaa paljon koodin ja kaikkien rekisterien käsittelyn ymmärtämisessä

Vaihe 2: Latausalusta

Latausalusta
Latausalusta
Latausalusta
Latausalusta
Latausalusta
Latausalusta

Ei paljon lisättävää

Kuvat voivat puhua paremmin.

Lisäsin juuri 1N5404 -diodin 12 voltin koskettimeen

1) ongelmien välttämiseksi, jos akun kosketus koskettaa 12 voltin kosketinta, kun asetat radion tukiasemaan (mutta näin ei koskaan tapahtunut)

2) alentaa jännitetasoa 10,8 volttiin (emolevyllä on myös diodi), koska MC7805 voi kuumentua hieman, kun se siirtyy 12 voltista 5 volttiin 1 ampeerin virralla (ruuvasin rautapalan jäähdytyselementiksi 7805)

Lisäsin pienen 3 x 7 segmentin volttimittarin osoittamaan akun varauksen

Tässä laitteessa on 3 johtoa kulutuksen pienentämiseksi (yli 1 megaoomi mittausjohdolla), mikä mahdollistaa radion pitämisen virrankatkaisijalla pitkään ilman akun purkamista.

Kuva
Kuva

2 vipukytkintä käytetään virran katkaisemiseen, kun radio on pois päältä (välttääksesi 12 V: n liittimissä)

Kuva
Kuva

Laatikko on valmistettu vanerista (ennen maalaamista kuvaan) Annan sinun kuvitella kuinka tehdä kaunis laatikko, koska minun ei ole kovin seksikäs !!!!!

Olin hyvin hämmästynyt, mutta latausasema toimii hyvin, enkä ole koskaan savustanut laskeutuessani radion päälle ………….

Vaihe 3: Laatikko

Laatikko
Laatikko
Laatikko
Laatikko
Laatikko
Laatikko
Laatikko
Laatikko

Luulen, että kenenkään pitäisi haluta tehdä niin kuin hän haluaa seurata taiteellisia kykyjään !!!!!

Joka tapauksessa selitän pian, kuinka voisin rakentaa jotain, joka näyttää kauhistuttavalta työkalupakilta

Edestä ja takaa on leikattu 4 mm vaneria 15x45 cm

ylä- ja alaosa on 10 mm vaneria 15x45 cm

Sivut ja kaksi sisäistä väliseinää (2 2 paikkaa HP: lle ja komponentit keskellä) ovat 10 mm vaneria 13x13 cm

Tein etupaneeliin 2 x 10 cm reikää HP: lle ja 14 x 14 neliön reiän mustalle maalatulle 15 x 15 mm: n 2 mm: n orgaaniselle lasille (lisäsin läpinäkyvän painetun tarran maalaamisen jälkeen, mutta se ei ole niin luettavissa mustan vuoksi väri takana)

Tein 2 reikää päälle:

yksi tehovahvistimen potentiometrille (tason säätämiseksi tarvittaessa) ja myös lämmöntuotantoon

toinen antennille

takapaneeliin tein 2 reikää:

Yksi USB -pistokkeelle (suoraan nano -pistokkeelle)

Yksi 16 mm ilmajäähdytykseen (14 mm: n reikä tehovahvistimessa, joka ylittää ilmajäähdytyksen)

kahva on valmistettu 12 mm: n kupariputkesta, joka on maalattu mustaksi

Kaikki yllä olevan kuvan osat löytyvät keskuksesta (myöhemmin jouduin laittamaan akut vasempaan HP -osastoon, koska se oli liian lähellä päälokeron HC06 BT -moduulia)

Se siitä

Tietysti täytyy olla jotain seksikkäämpää !!!!!

Vaihe 4: Arduino -osa (kaaviot ja koodi)

Yritin laittaa mahdollisimman paljon tietoa ohjelman kommentteihin.

Muutamia lisätietoja

Decode_TXT -menettelyä käytetään sekä Bluetooth- että kytkentämenettelyssä

Molemmat menettelyt käyttävät joitakin avainsanoja

v+ => lisätäksesi äänenvoimakkuutta

v- => laskea

f+ => lisätäksesi 100 kHz: n askeleen taajuutta

f->> pienentää

su+=> etsi ylös

sd-=> etsi alas

prefu => lisää esivalittua kanavanumeroa

prefd => vähennys

hei => Android APP: n lähettämä Bluetooth -yhteyden aikana, koodi lähettää radion tilan takaisin

bye => APP lähettää, kun BT katkaisee yhteyden

pow => radio lähetti sovelluksen virtalähdetilassa (latausalustalla)

bat => akkutilassa

lb => lähetetään, kun akun varaus on liian alhainen (noin 8 volttia)

Bluetooth -tiedonsiirto on suojattu ohjaussilmukalla:

Aina kun FM -radio lähettää tietoja, ajastin käynnistyy odottamaan Android -sovelluksen "ok" vastausta

3 virheen sattuessa (ajastin vanhentunut) radio katkaisee BT -linkin. (tämä leikkaa myös linkin Android -puolella)

Toisella puolella

Kun sovellus lähettää komennon, se odottaa radiosta vastausta toisen komennon lähettämiseen.

Get_RT -menettely käynnistetään, kun RDS -lippu on asetettu (nastan 3 keskeytyksen jälkeen)

tässä on koodi (linkki GITHUBiin)

Kaaviot:

FM -radion emolevy (itse asiassa SI4703 on erillään suojatussa laatikossa):

Kuva
Kuva

Etupaneeli:

Kuva
Kuva

Latausalusta:

Kuva
Kuva

Linkit Fritzing -tiedostoihin:

FR RADIO emolevy

Etupaneeli

Latausalusta

Vaihe 5: Android -sovellus

Android -sovellus
Android -sovellus
Android -sovellus
Android -sovellus

Valmistettu APP -keksijän kanssa

Tässä linkit GitHubiin

Radio FM aia

Android -APK

Sovellus käyttää kahta ajastinta:

1) Bluetooth -viestintää varten (100 ms)

2) vilkkuvaan akun lediin, kun kuorma on noin 8 V (1000 ms)

Ensimmäistä kertaa sinun on pariliitettävä HC06 -moduuli älypuhelimeen tai tablettiin.

Käytän TinyDB: tä HC06 -moduulin BT -osoitteen tallentamiseen, ensimmäinen yhteys, kun BT -osoitteen painike otetaan käyttöön, ja sinun on valittava HC06 luettelosta (omalta osaltani nimein HC06 -moduulin uudelleen FM_RADIO -ohjelmassa)

Sovelluksessa en aina käyttänyt prosenttiosuutta elementin koolle, joten älypuhelimesta riippuen saattaa olla niin vaikeita ongelmia

Omani on Galaxy Note 3, joten melko suuri näyttö …….

Joten vietin paljon aikaa tämän pienen mutta erittäin tehokkaan SI4703: n löytämiseen.

Ja oli erittäin ilo kirjoittaa nämä ohjeet

Jopa seuraavaan projektiini

Näkemiin!!!