Sadržaj:
- Korak 1: Skupite komponente
- Korak 2: Izgradite MCU-radio podsistem
- Korak 3: Razvojno testiranje
- Korak 4: Pripremite okvir projekta
- Korak 5: Priključivanje perifernih I/O komponenti
- Korak 6: Konačna kompletna montaža
- Korak 7: Značajke softvera i uređaja i rad
Video: Komunikatori signalnog koda (RFM69): 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Ovi "2-bitni" (digitalni) radio komunikatori omogućuju međusobno signaliziranje (gdje se nalaze; ako su završili …) prilikom kupovine na suprotnim krajevima velike kutije; čak i tamo gdje mobilni telefoni nemaju servis ili su napunjene baterije.
Koriste se radio moduli RFM69 915MHz. Vrlo su efikasni, radio prijemnici male snage koji koriste digitalnu paketnu komunikaciju. Oni mogu komunicirati preko 100 metara koristeći malu snagu, na samo 10s miliampera, i čak 1/2 kilometra ili čak 1/2 milje koristeći oko 120 ma.
Radio moduli RFM69 mnogo su efikasniji i efektniji na većim udaljenostima od NRF24L01 ili RFM12.
Za još veće pouzdane veze na daljinu, ovaj projekt bi se mogao koristiti i za korištenje radio modula LoRa. Postoji nekoliko LoRa uređaja (poput RFM95) koji su slične veličine i sučelja. Ali koštaju mnogo više, što je za mene bilo neopravdano.
Jedinice podržavaju skup kodova pitanja i odgovora u stilu 10-20 (lokacija?) U stilu (pogledajte wiki/Ten-code https://en.wikipedia.org/wiki/Ten -code); kao i izborni Morzeov kod. Uređaji ne podržavaju nikakvu govornu (analognu) komunikaciju.
Mogu se koristiti i kao pejdžeri sa 3 nivoa zahtjeva za pažnju, kada se neko oporavlja ili radi ispod kuće.
Osim toga, mogu biti jako zabavni, posebno za djecu ili studente.
Korak 1: Skupite komponente
Budući da radio modul ne može podnijeti 5v napajanje ili signalni napon, morate koristiti MCU od 3.3v. Također imajte na umu da koristim 'H' verziju radio modula velike snage.
Ova lista treba izgraditi 2 jedinice.
- qty 2 Pro Mini 3.3v Arduino MCU
- qty 2 RFM-69HCW 915MHz modula
- qty 2 Futrola (trebala je biti pretinac za baterije)
- qty 2 Li-ion 3,7v 200+mah baterije https://www.ebay.com/itm/311682151405 (7x20x30mm, ~ Maksimalna upotrebljiva veličina 9x24x36mm)
- qty 4 crveno-zelene LED diode sa običnom katodom od 5 mm sa dvobojnim bojama https://www.ebay.com/itm//112318970450 (napon ožičenja i prekidanja je važan)
- qty 4 prekidača sa tipkama 6x6x7,5 mm
- qty 2 Piezo aktivni zujalica
- qty 2 otpornika svaki… 270 Olm, 1,5 kOlm, ~ 5 k
- qty 2 0,1 uf monolitna kapa
Opcionalno
- qty 2 bijele (ili plave) LED diode od 3 mm
- qty 2 3,5 mm Phono utičnice
- qty 2 kondenzator filtera snage 220uf
- Štapić za sladoled
Ostale zalihe koje će vam možda trebati
30ga žica čvrsta https://www.ebay.com/itm/142255037176, Puna žica od 26 ga ili 24 žice nasukana, za uzemljenje i +V
Puna žica 22ga, za antenu
Ostalo: pribor za lemljenje, traka, vruće ljepilo, alati za izradu prototipa.
USB u TTL pretvarač
Opcijski hardver:
Stereo priključak za povezivanje slušalica kako ne biste propustili dolaznu komunikaciju. Na njega se može povezati i prijenosno pojačalo za zvučnike.
Mala bijela LED dioda (3 mm) je opcionalna. Dodao sam ga da služi kao ON indikator. Bilo je jednostavno dodati dok sam ga povezivao preko Btn1 koji dobiva određenu pogonsku struju iz unutarnjeg otpornika (~ 37 k). S takvim malim pogonom ova LED dioda mora biti visoko efikasna. Mogla bi se koristiti zelena ili možda plava LED dioda, ali ne i žuta ili crvena jer je njihov pad napona prenizak i izgledalo bi kao da je dugme pritisnuto. Ne bih koristio zelenu jer se ta boja inače koristi za signaliziranje informacija.
Fono utičnica takođe može biti izostavljena. Ovaj uređaj ne stvara mnogo buke, ali ako ste zabrinuti zbog privlačenja pažnje drugih, tada pruža mogućnost korištenja slušalica. Alternativno, komad selotejpa preko otvora za zvuk je efikasan.
Kako bi sva mjerenja bila laka i točna, jako mi se sviđa ova jeftina čeljust.
Korak 2: Izgradite MCU-radio podsistem
Spojite kratke žice na MCU pinove: 10, 11, 12, 13; žica srednje dužine na pin2.
Dodajte dugačke (4-5 inča) I/O pinovima MCU-a koji će se koristiti (pinovi: 3-9). Koristio sam mjerač 30 AWG i različite boje za periferne tipove. Ova žica malog promjera može podnijeti signale koji su manji od 100 miliampera, ali je ipak dovoljno mala i savitljiva (i toplo se preporučuje) da olakša tijesno sastavljanje.
Također spojite uzemljenje i Vcc žice (koristio sam 26ga, one su plave na fotografijama). Ove žice nose veću struju pa upotrijebite veliki mjerač za smanjenje pada napona (i potencijalnog zračenja signala šuma).
Spojite MCU s RFM-69 pločom. Sve osim dugih žica ide do njega.
Preklopite radio ploču prema dolje preko MCU ploče. Između ploča ne bi trebalo biti kratkih spojeva. Ako se pokaže da postoji stvaran potencijal kratke upotrebe, umiješajte komad trake ili plastične ploče.
Dodajte žicu antene (22-24 gaga. 80 mm) na radio ploču, kao što se vidi na fotografiji.
Korak 3: Razvojno testiranje
Za implementaciju ovih jedinica možete preskočiti ovaj odjeljak. Za one koje zanima ovo daje malo više informacija o tome kako sam tamo stigao.
A ¼ talasna dužina za 915MHz je 82 mm. Vodič za Sparkfun.com predlaže upotrebu 78 mm. Razumijem da antenska tehnika kaže da kada se antena nalazi unutar ½ valne dužine zemlje, vaša će se antena ponašati kao da je ~ 5% duža nego što jeste. Što se tiče 915Mhz to bi bilo manje od stope i obično radite s ovom jedinicom mnogo više od tla, odbacujem ovu dužinu od 78 mm. Međutim, postoje i drugi čimbenici koji mogu uzrokovati slične učinke za koje se smatra da je pametno upotrijebiti manje od ¼ valne duljine. Napravio sam kompromis i presjekao sam žice antene na ukupno 80 mm (uključujući dio koji prolazi kroz PCB). Uz odgovarajuću opremu za testiranje, mogli biste bolje optimizirati duljinu antene za vaš uređaj, ali očekivao bih samo manja poboljšanja.
Nakon prilagodbi dobio sam maksimalni domet od oko 250 m s nekim preprekama. Iznad, recimo, 150 m, orijentacija i položaj antene postajali su sve važniji.
Kada sam koristio potpunu konfiguraciju antene tipa dipol (vertikalni aktivni element od 80 mm nasuprot dolje usmjerenog elementa uzemljenja od 80 mm) za jednu jedinicu, dobio sam, uz pokušaj i grešku, do 400 metara s nekoliko stabala i kućom između, i čvrstu dvosmjernu vezu na ½ te udaljenosti, bez obzira na položaj ili orijentaciju udaljenih jedinica.
Korak 4: Pripremite okvir projekta
Konstrukcija ovog projekta pomoću male kutije prilično je izazovna. Imam iskustvo u izgradnji mnogih prilagođenih elektroničkih spravica za kućne, industrijske i svemirske projekte. Početnici bi radije mogli koristiti veću kutiju za kontejnere, što znatno olakšava konstrukciju. Na kraju krajeva, to je uživanje koje tražimo, a ne frustracija. BTW, možda ćete primijetiti manje razlike na fotografijama jedinica koje sam napravio.
Očistite veći dio unutrašnjosti kutije. Dlijetom ili X-acto nožem odrežite dva rebra s desne i jedno s lijeve strane. (pogledajte fotografiju unutrašnjosti kutije prije i poslije)
Zagrijte kraj X-acto ili noža za rezanje (oko 15 sekundi pomoću upaljača) i odrežite jedan veliki stup unutar kućišta, a druga dva spustite na otprilike 1/8 inča. Nakon što sam montirao prekidač, otopio sam ta dva stupa dovoljno da prekidač ostane na mjestu.
Koristio sam maskirnu traku na kutiji za označavanje lokacija rupa. Pogledajte fotografije iznad.
Kako bi bušenje rupa ostalo na oznaci, prvo sam označio mjesta tačkom sa strelicom, zatim izbušio sve lokacije 1/16 bitom, a zatim na kraju izbušio svaku rupu do željene veličine.
Izbušite rupe za dugmad, audio i LED diode u kućištu. Dvije rupe za glavne LED diode, na vrhu, su 13/64”(5 mm) i udaljene su 10 mm od ruba. Rupe za zvuk (zvučni signal) i opcionalnu LED lampicu „Uključeno“su 1/8”(3 mm). Nalaze se 10 mm od vrha. Mala LED dioda je 7 mm sa strane. Audio rupa je centrirana jedna na drugu. Otvori za dugmad sa strane su 9/16”(3,5 mm). Jedno dugme je 10 mm od vrha, drugo 20 mm. Unutrašnjost rupa za dugmad ručno sam zakosio bušilicom od 1/4”kako bih se osiguralo da se dugmad ne zaglave pri pritisku.
Ako koristite fono utičnicu za vanjske slušalice ili zvučnik, morate otvoriti već postojeću rupu na dnu na 15/64”. Ovdje je materijal prilično gust i jednostavno pokušaj izbušenja rezultirao bi rupom preblizu ruba. Dakle, prvo izbušite rupu od 1/16, s centrom otprilike 16 cm od ruba postojeće rupe. Zatim povećajte tu rupu sa bitom 7/16”. Oštrim malim sječivom (~ Xacto) izrežite materijal tako da dvije susjedne rupe budu otprilike jedna. Upotrijebite Dremel spiralnu rašpu ili turpiju za štakorske repove tako da rupe formiraju bunarsku okruglu rupu u koju će se svrdlo lako usredsrediti. Rupa bi u ovom trenutku trebala biti gotovo 15/64 -ta. (U ovom trenutku postoji fotografija rupe) Sada je izbušite bušilicom od 15/64”. Ne bi bilo 'Strašno' ako koristite ¼ bit.
Korak 5: Priključivanje perifernih I/O komponenti
Budite sigurni da prilikom lemljenja unutar okvira kućišta ne dopuštate nenamjeran dodir bilo kojeg dijela željeza i na taj način rastopite dio kutije, posebno po vanjskom rubu.
Dugmad
Dok postavljate gumbe, slijepite malu količinu ljepila. Vruće ljepilo je u redu, tanko ljepilo (poput super ljepila) bi moglo ući u dugme i učiniti ga neoperativnim. Imajte na umu da sam uklonio jednu nogu sa svakog od dugmadi (suvišni, na koje se nisam spajao); savijao ih tako da nisu previše stršili; i spojio dva donja pina između dugmadi. Dugmad su smještena tako da su unutrašnje povezane noge vodoravno jedna nasuprot drugoj.
Savijte provodnike LED diode za uključivanje/isključivanje od 3 mm tako da se može spojiti preko Btn1, pri čemu će njegova katoda ići prema zemlji. Ovo je možda najteže pitanje montaže.
Označite stranu LED dioda pored crvene anode. Odrežite dvije anode (izvana) do otprilike ¼ inča. orijentirajte ih označenim (crvenim) nagore. Ostavite središnji vod dugo, kasnije se savijaju kako bi se spojili na uzemljenu stranu dugmadi. Pogledajte fotografije.
Pričvrstite otpornike.
Nemojte jednostavno koristiti otpornike vrijednosti koje sam učinio za LED diode. LED diode sam kupio prije više od godinu dana, ne baš one gore navedene. Kako se učinkovitost LED jako razlikuje, provjerite vrijednosti otpornika za upotrebu sa LED diodama koje imate pri ruci. Odaberite otpornike za željenu svjetlinu s pogonskim naponom od 3 do 3,3 volta (poželjno 3,2 V). Za probni napon napajanja mogli biste koristiti dvije baterije od 1.5V u seriji ili visoki digitalni izlaz iz Arduino čipa sa 3.3v napajanjem. Provjerite da li dobivate dobru pravu žutu boju dok vozite i crvene i zelene elemente. Odrežite i lemite otpornike na LED diode slično kao što se vidi na fotografijama.
Na jednoj jedinici koristio sam štapić od sladoleda kao odstojnik oko dvije glavne LED diode tako da nisu toliko stršale. Ovo je isključivo lična preferencija. Ovo ima negativan nuspojava smanjenja efektivne svjetline / kuta gledanja ovih LED dioda.
Stavite malo ljepila duž vanjskog ruba zujalice i zalijepite ga između glavnih LED dioda (+ desno). Podesite njegov položaj tako da se poravna s rupom u kućištu prije nego što se učvrsti na mjestu.
Prekidač za uključivanje/isključivanje se drži na mestu topljenjem stupova montažnih rupa. Za to sam upotrijebio zagrijani vrh za mali odvijač.
Matica fono utičnice se ne pričvršćuje, pa upotrijebite vruće ljepilo na suprotnom kraju da biste je učvrstili.
Spojite masu duž dugmadi i LED dioda.
Pripremite plus i minus olovo (~ 24ga. Čvrsto) čekićem obrezanih krajeva tako da budu dvostruko široki nego što su debeli. Njihovi krajevi bi trebali lako ući u konektor za bateriju, ali čvrsto. Naravno, ako imate ili možete pronaći kabel za međusobno povezivanje namijenjen za spajanje s baterijom, svakako ga upotrijebite.
Povežite prekidač za uključivanje/isključivanje, fono utičnicu, zujalicu i žice za napajanje. Pogledajte prethodni dijagram ožičenja.
Imam mali kondenzator preko fono veza. Ovo se može izostaviti jer je prekinuto. Njegova je svrha spriječiti nisko buku u izlazu.
Nakon što su gumbi (kao i prekidač za uključivanje/isključivanje i fono utičnica) potpuno ožičeni i lemljeni, vruće ih zalijepite na mjesto tako da se neće pomaknuti ni nakon duže upotrebe.
Korak 6: Konačna kompletna montaža
Vrijeme je za povezivanje u MCU-radio podsistem u kućište s I/O uređajima.
Povežite podsistem MCU-Radio.
Odrežite žice prema potrebi, ostavljajući u njima dovoljno prostora za igru, tako da sklop podsistema može biti dovoljno smetnji da omogući lemljenje drugih krajeva žica.
Spojite žice na glavnu LED diodu s ispravnim crveno/zeleno, a posebno ispravite odnos lijevo/desno. LED diode su okrenute slijeva nadesno dok gledate u kućište kako držite i koristite komunikator. (osim ako ne namjeravate koristiti jedinice sa suprotnom stranom okrenutom prema vama, kao što bi ljevoruka osoba mogla učiniti).
Premjestite podsistem MCU-Radio na mjesto i pritisnite ga prema dolje, presavijajući žice po potrebi u kućište; provjeravajući da nema kratkih hlača. Ako je potrebno, ispod njega stavite komad električne trake.
Ovu jedinicu možete reprogramirati dok je sastavljena, kao što se vidi u sljedećem odjeljku, s privremeno priključenim FDDI -om putem kratkog kabela. Budite sigurni da je razina Vcc sa USB kabela za preuzimanje 3,3 V, a ne 5 V!
Priključite bateriju, gurnite je nazad i isprobajte, s obzirom da ste u nju već preuzeli softver. Pazite da baterija ne pritisne dugme za reset na MCU ploči.
BTW, baterija od 300 mAh trebala bi trajati oko 12 sati rada, prije nego što je treba napuniti.
Korak 7: Značajke softvera i uređaja i rad
Drugi veliki dio ovog projekta, o kojem ovisi njegov rad, je programiranje softvera. Ali sve sam to riješio pa ne morate.
Lako možete pronaći upute za preuzimanje skice na Pro mini Arduino na drugom mjestu. Postavite svoj Arduino IDE za ispravan uređaj i radnu frekvenciju, inače ćete dobiti loš zvuk i možda loše ponašanje. Obavezno koristite USB-TTL pretvarač sa 3.3v (ne 5v). Jedinicu treba isključiti. Možete vidjeti da sam stavio zaglavlje pod pravim kutom na kraj kabela za preuzimanje, a zatim ga umetnuo u povezane rupe na MCU ploči i pustio jedinicu da visi s nje, održavajući dovoljno dobru, ali privremenu vezu.
Takođe morate instalirati biblioteku za RMF69; pogledajte "Instaliranje biblioteke RFM69" dolje na ovoj stranici.
Uredite na odgovarajući način (pogledajte segment koda ispod), sastavite i preuzmite priloženu skicu Two_bit_Comm.
// !!!! Adrese za ovaj čvor. Obrnite lične karte za drugi čvor !!!!
#define MYNODEID 1 // ID mog čvora (0 do 255) #define TONODEID 2 // ID odredišnog čvora (0 do 254, 255 = emitiranje)
Softver iskorištava 'H' verziju radio -modula velike snage, u početku koristeći srednju snagu, a zatim ne može dobiti povratnu potvrdu pokušavajući s maksimalnom snagom. Ne znam, ali očekivao bih da ova operacija neće predstavljati problem ako se koristi verzija radija ne velike snage.
Operativna dokumentacija
Inicijalizacija, pri uključivanju:
Kada se jedinica ponovno pokrene, ona inicijalizira sav svoj hardver i softver i šalje postavke načina i opcija drugoj jedinici, održavajući ih sinkroniziranima. Čuje se jedan kratki zvučni signal, a zatim ako ova početna komunikacija uspije, slijedi još jedan zvučni signal i pali se zeleno svjetlo. Ako u ovom trenutku komunikacija ne uspije, nema drugog zvučnog signala i svijetli crveno svjetlo. Ako komunikacija ne uspije, druga jedinica je vjerojatno izvan dometa, isključena ili bez baterije. Pokušava se s više pokušaja i povećanjem do maksimalne snage prije prijema greške.
Način rada 1-10-20 Tip Comm
- Zdravo
- Treba pomoć
- HELP!
- Gotovo? Spreman da idem ?
- Gdje si ti ?
- Nazovi me.
- Molim ponovi
Također su definirane odgovarajuće konvencije odgovora. Uključujući odgovore "Vrsta područja" i "Vrsta odjeljka" na "Gdje ste?" zahtjevi.
Treba napomenuti da morate biti strpljivi kada jedinica prikazuje odgovor, jer će pritisci tastera za to vrijeme biti zanemareni.
Način 2 - dopušta oblik komunikacije Morzeovim kodom
Podržani su stil s jednim ključem i stil s dva ključa.
Priloženi dokument "Two_bit_Comm_user_Manual" pokriva sve detalje o funkcionalnim operacijama koje softver podržava.
Preporučuje se:
Arduino pisac Morseovog koda: 7 koraka (sa slikama)
Arduino pisac Morzeovog koda: Napravio sam robota koji može pretvoriti bilo koji dati tekst u Morzeov kod i zatim ga zapisati !! Napravljen je od kartona i Lega, a za elektroniku sam koristio Arduino i samo dva motora
Povećajte razmak između bakrene ravni i signalnog traga: 3 koraka
Povećajte razmak između bakrene ravnine i signala: Ja sam hobist i dizajniram štampane ploče (PCB) za svoje blogove i video zapise na YouTubeu. Naručio sam PCB putem interneta od kompanije LionCircuits. To je indijska kompanija i imaju automatiziranu platformu za proizvodnju. Automatski pregledava vaš njemački
PyonAir - monitor zagađenja zraka otvorenog koda: 10 koraka (sa slikama)
PyonAir - monitor zagađenja zraka otvorenog koda: PyonAir je jeftin sistem za praćenje lokalnih nivoa zagađenja vazduha - konkretno, čestica. Zasnovan na ploči Pycom LoPy4 i hardveru kompatibilnom sa Groveom, sistem može prenositi podatke i preko LoRa i putem WiFi-ja. Preduzeo sam ovaj p
Svjetlosni dragulj ✽ Upravljajte LED trakom bez Arduina i koda: 5 koraka (sa slikama)
Svjetlosni dragulj ✽ Upravljajte LED trakom bez Arduina i koda: Ovo je pametna lampa koja mijenja svjetlinu preklapanjem gornjeg dijela. Koncept: Ovo je lampa pogodna za sve korisnike koji uživaju u čitanju u opuštajućem okruženju. Pokušajte zamisliti ljude koji sjede za stolom kraj prozora s nekim cool pivom
Modularna neopikselna ploča za otvaranje otvorenog koda prilagođena idejnoj ploči: 4 koraka (sa slikama)
Modularna neopikselna ploča za otvaranje otvorenog koda pogodna za izradu ploča LED traka u mnogo manjem obliku