Indholdsfortegnelse:

Signal Code Communicators (RFM69): 7 trin (med billeder)
Signal Code Communicators (RFM69): 7 trin (med billeder)

Video: Signal Code Communicators (RFM69): 7 trin (med billeder)

Video: Signal Code Communicators (RFM69): 7 trin (med billeder)
Video: DevCamp 2020 - Low Power Wireless With Meadow 2024, Juli
Anonim
Signal Code Communicators (RFM69)
Signal Code Communicators (RFM69)
Signal Code Communicators (RFM69)
Signal Code Communicators (RFM69)

Disse "2-bit" (digitale) radiokommunikatorer giver et middel til at signalere hinanden (om hvor de er, hvis de er færdige …) når de handler i modsatte ender af en stor boksbutik; selv hvor mobiltelefoner ikke har nogen service eller batteriopladning.

RFM69 915MHz radiomoduler bruges. De er meget effektive radioer med lav effekt, der bruger digital pakkekommunikation. De kan kommunikere over 100 meter ved hjælp af lav effekt, på kun 10s milliampere og så meget som 1/2 kilometer eller endda 1/2 mile ved hjælp af omkring 120 ma.

RFM69 radiomodulerne er meget mere effektive og effektive over større afstande end enten en NRF24L01 eller en RFM12.

For endnu større pålidelige fjerntliggende forbindelser kunne dette projekt lige så godt laves til brugte LoRa -radiomoduler. Der er et par LoRa -enheder (som en RFM95) derude, der har samme størrelse og grænseflade. Men de kostede meget mere, hvilket for mig var uberettiget.

Enhederne understøtter et sæt af digitale, 10-20 (sted?) Stil spørgsmål og svar koder (se wiki/Ten-code https://en.wikipedia.org/wiki/Ten-code); samt valgfri Morse -kode. Enhederne understøtter ikke nogen stemmekommunikation (analog).

De kan også bruges som personsøgere med 3 niveauer af opmærksomhedsanmodninger, når nogen er ved at konvalere eller arbejder under huset.

Udover det kan de være meget sjove, især for børn eller studerende.

Trin 1: Saml komponenter

Da radiomodulet ikke kan håndtere en 5v forsyning eller signalspænding, skal du bruge 3.3v MCU'er. Bemærk også, at jeg bruger 'H' højeffektversionen af radiomodulerne.

Denne liste er til at bygge 2 enheder.

  • antal. 2 Pro Mini 3.3v Arduino MCU
  • antal. 2 RFM-69HCW 915MHz moduler
  • antal. 2 Etui (skulle være et batterirum)
  • antal. 2 Li-ion 3,7v 200+mah batterier https://www.ebay.com/itm/311682151405 (7x20x30mm, ~ Maksimal størrelse, der kan bruges 9x24x36mm)
  • antal. 4 rødgrønne 5 mm almindelige katode-bi-farve lysdioder https://www.ebay.com/itm//112318970450 (ledningsføring og nedbrydningsspænding er vigtig)
  • antal. 4 6x6x7.5mm knapkontakter
  • antal. 2 Piezo aktiv summer
  • antal. 2 hver modstandere … 270 Olm, 1,5kOlm, ~ 5k
  • antal. 2 0,1 uf monolitisk hætte

Valgfri

  • antal. 2 3 mm hvide (eller blå) lysdioder
  • antal. 2 3,5 mm Phono -stik
  • antal. 2 220uf strømfilter kondensator
  • Popsicle stick

Andre forsyninger, du måske har brug for

30ga wire solid https://www.ebay.com/itm/142255037176, 26ga tråd fast eller 24ga strandet, til grunde og +V

22ga tråd solid, til antenne

Diverse: loddeudstyr, tape, varm lim, prototypeværktøjer.

USB til TTL -konverter

Ekstraudstyr:

Et stereostik til tilslutning af et øretelefon, for ikke at gå glip af indgående kommunikation. Der kunne også tilsluttes en bærbar højttalerforstærker.

Den lille (3 mm) hvide LED er valgfri. Jeg tilføjede det for at tjene som en ON -indikator. Det var enkelt at tilføje, da jeg kørte det på tværs af Btn1, som får en vis drevstrøm fra en intern resister (~ 37k). Med sådan et lille drev skal denne LED være en højeffektiv. En grøn eller måske en blå LED kunne bruges, men ikke gul eller rød, da deres spændingsfald er for lavt og ville få det til at ligne en knap. Jeg ville ikke bruge grøn, da den farve ellers bruges til at signalere oplysninger.

Phono -stikket kan også udelades. Denne enhed larmer ikke meget, men hvis du er bekymret for at tiltrække andres opmærksomhed, giver den mulighed for at bruge en øretelefon. Alternativt er et stykke tape over hullet til lyd effektiv.

For at gøre alle målinger lette og præcise kan jeg virkelig godt lide denne billige tykkelse.

Trin 2: Byg MCU-radio delsystem

Byg MCU-radio delsystem
Byg MCU-radio delsystem
Byg MCU-radio delsystem
Byg MCU-radio delsystem
Byg MCU-radio delsystem
Byg MCU-radio delsystem

Tilslut korte ledninger til MCU -ben: 10, 11, 12, 13; en mellemlang ledning til pin2.

Tilføj lange (4-5 tommer) til I/O-benene på MCU'en, der skal bruges (ben: 3-9). Jeg brugte 30 AWG -måler og forskellige farver til perifere typer. Denne tråd med lille diameter er i stand til at håndtere de signaler, der er mindre end 100 milliampere, men alligevel er den rigelig lille og smidig nok (og kan varmt anbefales) til at lette stram montering.

Tilslut også en grund og en Vcc -ledninger (jeg brugte 26ga, de er de blå på billederne). Disse ledninger bærer mere strøm, så brug en stor måler til at reducere spændingsfald (og potentiel støjsignalstråling).

Tilslut MCU'en med RFM-69-kortet. Alle undtagen de lange ledninger går til det.

Fold radiokortet ned over MCU -kortet. Der bør ikke være shorts mellem brædderne. Hvis der ser ud til at være et reelt potentiale for en kort brug, skal du bruge et mellemliggende stykke tape eller plastark.

Sæt antennekablet (22-24ga. 80 mm) på radiokortet, som det ses på billedet.

Trin 3: Udviklingstest

Udviklingstest
Udviklingstest
Udviklingstest
Udviklingstest

Til din implementering af disse enheder kan du springe dette afsnit over. For dem der er interesseret giver dette lidt mere information om hvordan jeg kom dertil.

En ¼ bølgelængde for 915MHz er 82 mm. Sparkfun.com -vejledningen foreslår at bruge 78 mm. Jeg forstår, at antenneteknologi siger, at når antennen er inden for en ½ bølgelængde af jord, vil din antenne fungere som om den er ~ 5% længere end den er. Hvad angår 915Mhz, der ville være mindre end en fod, og normalt betjener du denne enhed meget højere fra jorden end det, afviser jeg denne 78 mm længde. Der er dog andre faktorer, der kan forårsage lignende effekter, der finder det klogt at bruge mindre end nøjagtigt ¼ bølgelængde. Jeg har gået på kompromis og har skåret mine antenneledninger til i alt 80 mm (inklusive sektionen, der går gennem printkortet). Med det korrekte testudstyr kan du bedre optimere din antennelængde til din enhed, men jeg ville kun forvente mindre forbedringer.

Efter justeringer fik jeg omkring 250m maks rækkevidde med nogle forhindringer. Udover at sige 150m blev antennens orientering og position mere og mere vigtig.

Da jeg brugte en antennekonfiguration af fuld dipoltype (et lodret 80 mm aktivt element modsat et nedadgående 80 mm jordtrådselement) til en enhed, fik jeg med forsøg og fejlpositionering op til 400 meter med flere træer og et hus imellem, og solid 2-vejs kommando på ½ den afstand uanset fjernenhedernes position eller retning.

Trin 4: Forbered projektboks

Forbered projektboks
Forbered projektboks
Forbered projektboks
Forbered projektboks
Forbered projektboks
Forbered projektboks
Forbered projektboks
Forbered projektboks

Konstruktionen af dette projekt ved hjælp af en lille kasse er ret udfordrende. Jeg har erfaring med at opbygge mange mange brugerdefinerede elektroniske dimser til hjem-, industri- og rumfartsprojekter. Nybegyndere kan hellere bruge en større containerkasse, hvilket gør konstruktionen meget lettere. Det er jo nydelse, vi leder efter, ikke frustration. BTW, du vil muligvis bemærke mindre forskelle i billederne af de enheder, jeg byggede.

Rengør meget af indersiden af æsken. Brug en mejsel eller X-acto kniv til at afskære to ribben til højre og en til venstre. (se billedet af indersiden af en æske før og efter)

Opvarm enden af en X-acto eller en kniv (i ~ 15 sekunder ved hjælp af en lighter) og skær den ene store stolpe af inde i kassen, og sænk de to andre til ca. 1/8 tommer. Da jeg monterede kontakten, smeltede jeg de to stolper nok til at holde kontakten på plads.

Jeg brugte malertape på æsken til at markere huller. Se billederne ovenfor.

For at holde boringen af hullerne på mærket, markerede jeg først pletterne med en pil, derefter borede jeg alle steder med en 1/16 bit, og derefter borede jeg hvert hul til den ønskede størrelse.

Bor hullerne til knapperne, lyden og lysdioderne i sagen. De to huller til de vigtigste lysdioder øverst er 13/64”(5 mm) og er 10 mm fra kanten. Hullerne til lyden (bip-summer) og “On” -dioden (ekstraudstyr) er 3 mm (1/8”). De er 10 mm fra toppen. Den lille led er 7 mm fra siden. Lydhullet er centreret fra side til side. Hullerne til knapperne på siden er 9/16”(3,5 mm). Den ene knap er 10 mm fra toppen, den anden 20 mm. Jeg fasede indersiden af knaphullerne med hånden med en 1/4”bor, for at sikre, at knapperne ikke ville sidde fast, når de blev trykket på.

Hvis du bruger et phono-stik til eksterne hovedtelefoner eller højttalere, skal du åbne det eksisterende hul i bunden til 15/64”. Materialet her er ret tykt, og simpelthen at prøve at bore det ud ville resultere i et hul for tæt på kanten. Så bor først et 1/16 hul med midten ca. en 16 tommer fra kanten af det eksisterende hul. Forstør derefter hullet med en 7/16”bit. Med et skarpt lille blad (~ Xacto) skæres materialet væk, så de to tilstødende huller er omtrent et. Brug en Dremel spiral rasp eller en rottehale fil, så hullerne danner et godt rundt hul, som et bor let kan centrere i. Hullet skal næsten være 15/64 på dette tidspunkt. (Der er et foto af hullet på dette tidspunkt) Bor nu det ud med en 15/64”bit. Det ville ikke være 'Frygteligt', hvis du bruger en ¼ bit.

Trin 5: Montering af perifere I/O -komponenter

Montering af perifere I/O -komponenter
Montering af perifere I/O -komponenter
Montering af perifere I/O -komponenter
Montering af perifere I/O -komponenter
Montering af perifere I/O -komponenter
Montering af perifere I/O -komponenter

Vær sikker på ved lodning inden for rammerne af sagen, at du ikke utilsigtet lader nogen del af jernet røre ved og dermed smelte en del af kassen, især langs dens yderkant.

Knapperne

Klem knapperne ned med en lille mængde lim, mens du placerer dem. Varm lim er OK, tynd lim (som superlim) kan komme ind i knappen, hvilket gør den ubrugelig. Bemærk, at jeg havde fjernet et ben til hver af knapperne (redundante, som jeg ikke havde forbindelse til); bøjede dem, så de ikke stak for meget ud; og tilsluttede den to nederste stift mellem knapperne. Knapperne er placeret således, at de indvendigt forbundne ben er vandret modsat hinanden.

Bøj ledningerne til 3 mm "tænd/sluk" LED, så den kan forbindes på tværs af Btn1, og dens katode går til jorden. Dette er måske det vanskeligste montagespørgsmål.

Marker siden af lysdioderne ved siden af den røde anode. Skær de to anoder (udvendigt) fører til omkring ¼ tommer. orienter dem med den markerede (røde) bly op. Lad midterledningen være lang. De er senere bøjet for at forbinde til bunden af knapperne. Se fotos.

Fastgør modstanderne.

Brug ikke bare de værdimodstandere, som jeg gjorde for lysdioderne. Jeg købte mine lysdioder for mere end et år siden, ikke ligefrem dem, der er anført ovenfor. Da LED -effektiviteten varierer meget, kan du teste modstandsværdier til brug med dine hånd -LED'er. Vælg modstandere til den ønskede lysstyrke med en drevspænding på 3 til 3,3 volt (3,2v foretrækkes). Til en testforsyningsspænding kan du bruge to 1,5V batterier i serie eller en høj digital output fra en 3,3v drevet Arduino -chip. Kontroller, at du får en god ægte gul, når du kører både de røde og grønne elementer. Trim og lod lodmodstanderne til lysdioderne på samme måde som det ses på billederne.

På den ene enhed brugte jeg en Popsicle -pind som afstandsstykke omkring de to vigtigste lysdioder, så de ikke stak så meget ud. Dette er strengt en personlig præference. Dette har en negativ bivirkning ved at reducere den effektive lysstyrke / betragtningsvinkel på disse lysdioder.

Læg lidt lim langs den ydre kant af summeren, og stik den mellem de vigtigste lysdioder (+ til højre). Juster dens position, så den flugter med hullet i sagen, før den sættes på plads.

Tænd/sluk -kontakten holdes på plads ved at smelte monteringshulstolperne ned. Jeg brugte den opvarmede spids til en lille skruetrækker til dette.

Phono jack -møtrikken fastgøres ikke, så brug varm lim i den modsatte ende for at sikre den.

Tilslut jorden langs knapper og lysdioder.

Forbered en plus og minus bly (~ 24ga. Solid) ved at hamre de trimmede ender, så de er dobbelt så brede som de er tykke. De ender skal derefter gå ind i batteristikket let, men tæt. Selvfølgelig, hvis du har eller kan finde et forbindelseskabel, der er beregnet til at passe til dit batteri, så brug det på alle måder.

Tilslut tænd/sluk -kontakten, phono -stik, summer og strømledninger. Se det tidligere ledningsdiagram.

Jeg har en lille kondensator på tværs af phono -forbindelserne. Dette kan udelades, da det har en tæt pasform. Dens formål er at forhindre lavt brummen i output.

Efter at knapperne (såvel som tænd/sluk -kontakten og phono -stikket) er fuldt forbundet og loddet, limes de varmt på plads, så det ikke rykker selv efter omfattende brug.

Trin 6: Endelig komplet samling

Den sidste komplette samling
Den sidste komplette samling
Den sidste komplette samling
Den sidste komplette samling
Den sidste komplette samling
Den sidste komplette samling

Det er på tide at tilslutte MCU-radio-undersystemet til kabinettet med I/O-enhederne.

Tilslut MCU-Radio undersystemet.

Trim ledningerne efter behov, så der er lige nok spil i dem, så undersystemet kan være ude af vejen nok til at lodde de andre ender af ledningerne.

Sørg for at tilslutte ledningerne til hoved -LED'en til de korrekte rød/grøn og især få forholdet mellem venstre og højre korrekt. Lysdioderne er omvendt fra venstre mod højre, når du kigger inde i sagen om, hvordan du holder og bruger kommunikatoren. (medmindre du har til hensigt at bruge enhederne med den modsatte side mod dig, som en venstrehåndet person måske vil gøre).

Flyt MCU-Radio undersystemet på plads, og tryk det ned, fold ledninger efter behov, ind i kassen; kontrollere at der ikke laves shorts. Læg et stykke elektrisk tape under det, hvis det er nødvendigt.

Du kan omprogrammere denne enhed, mens den er samlet som vist i næste afsnit, med en midlertidigt tilsluttet FDDI via kort kabel. Sørg for, at Vcc -niveauet fra USB -downloadkablet er 3,3v, ikke 5v!

Sæt batteriet i, skub bagsiden af og test det, forudsat at du allerede har downloadet software til det. Vær forsigtig med ikke at lade batteriet trykke på reset -knappen på MCU -kortet.

BTW, et 300mah batteri skal vare i cirka 12 timers drift, før det skal genoplades.

Trin 7: Software og enhedens funktioner og betjening

Software og enhedens funktioner og betjening
Software og enhedens funktioner og betjening
Software og enhedens funktioner og betjening
Software og enhedens funktioner og betjening

Den anden store del af dette projekt, som dets drift afhænger af, er softwareprogrammeringen. Men jeg har klaret det hele, så du behøver ikke.

Du kan let finde instruktioner til at downloade en skitse til en Pro mini Arduino andre steder. Indstil din Arduino IDE til den korrekte enhed og driftsfrekvens, ellers får du dårlig lyd og måske forkert opførsel. Sørg for at bruge en USB-TTL-konverter med 3,3v (ikke 5v) Enheden skal selv være slukket. Du kan se, at jeg lagde en retvinklet overskrift på enden af downloadkablet og derefter indsatte det i de tilhørende huller på MCU -kortet og lod enheden hænge fra det og opretholde en god nok, men alligevel midlertidig, forbindelse.

Du skal også installere biblioteket til RMF69; se "Installation af RFM69 -biblioteket" langt nede på denne side.

Rediger passende (se kodesegment nedenfor), kompilér og download den vedhæftede Two_bit_Comm -skitse.

// !!!! Adresser til denne knude. VEND ID'ERNE TIL DEN ANDEN NODE !!!!

#define MYNODEID 1 // My node ID (0 to 255) #define TONODEID 2 // Destination node ID (0 to 254, 255 = broadcast)

Softwaren drager fordel af 'H' højeffektversionen af radiomodulerne ved først at bruge en medium effekt, og derefter kan den ikke få en bekræftelse tilbage, den prøver med maksimal effekt. Jeg ved det ikke, men jeg ville forvente, at denne operation ikke ville udgøre et problem, hvis man skulle bruge en ikke -højeffektiv version af radioer.

Operationel dokumentation

Initialisering ved opstart:

Når en enhed genstarter, initialiserer den al sin hardware og software og sender indstillingerne for tilstand og option til den anden enhed og holder dem synkroniseret. Der er et enkelt kort bip, og hvis denne indledende kommunikation lykkes, er der et andet bip og et grønt lys tændt. Hvis kommunikationen mislykkes på dette tidspunkt, er der ikke et andet bip, og der lyser et rødt lys. Hvis kommunikationen mislykkes, er det sandsynligt, at den anden enhed er uden for rækkevidde, slukket eller batteri er tom. Flere forsøg og en stigning i maksimal transmissionseffekt forsøges, før fejl accepteres.

Tilstand 1-10-20 Type Komm

  • Hej
  • Har brug for hjælp
  • HJÆLP!
  • Færdig ? Klar til at gå ?
  • Hvor er du ?
  • Ring til mig.
  • Gentag venligst

Passende reaktionskonventioner er også defineret. Herunder svarer "Område type" og "Sektionstype" svar på "Hvor er du?" anmodninger.

Det skal bemærkes, at du skal være tålmodig, når enheden viser et svar, da der trykkes på knapper i løbet af denne tid.

Mode 2 - tillader en form for Morse Code Communication

Både enkelt nøgle og to nøgle stil understøttes.

Det vedhæftede dokument "Two_bit_Comm_user_Manual" dækker alle detaljer om funktionel drift, der understøttes af softwaren.

Anbefalede: