Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Helium is een compleet draadloos platform voor het internet der dingen, met geïntegreerde hardware, software-interfaces en een uitgebouwde infrastructuur om objecten eenvoudig, efficiënt en veilig met internet te verbinden. Er zijn twee hardwarecomponenten: de Atom en de Bridge. De Atom is het kleine apparaatje dat communiceert met de Bridge, die deze informatie vervolgens oppikt en doorgeeft aan het internet. Voor deze demo gebruiken we het Helium Atom dev shield op een Arduino uno.
Andere nuttige Helium-bronnen zijn onder meer:
Helium Blog
Helium-forum
Helium-documenten
Stap 1: Helium-bibliotheek downloaden
Omdat het Atom-ontwikkelbord een schild is bovenop een Arduino Uno, heb je de Arduino IDE nodig om de code te programmeren en op het apparaat te laden. De Helium-Arduino Library levert de functies die nodig zijn voor het openen van verbindingen en het verpakken van berichten. Gedetailleerde informatie over het gebruik van de Helium-Arduino-bibliotheek is te vinden in Helium Docs. Download en laat beide draaien.
Stap 2: Coderen in Arduino
Begin altijd met uw include-statements
#erbij betrekken
#erbij betrekken
Vervolgens moet u uw Helium-modem aangeven
HeliumModem *modem;
In de void setup-functie moet de modem worden geïnitialiseerd
ongeldige setup()
{modem = nieuwe HeliumModem(); }
Gegevens worden verzonden binnen uw lusfunctie. Declareer eerst een datapakket en definieer het aantal elementen dat het zal bevatten. Voeg vervolgens de gegevens toe aan het pakket, gevolgd door het pakket via de modem te verzenden. Volg dit met een vertragingstijd om de frequentie van verzonden pakketten in te stellen.
lege lus()
{ DataPack dp(1); dp.appendString((char *)"Hallo wereld"); modem->sendPack(&dp); vertraging (500); }
DataPack is Helium's manier om uw gegevens in te pakken om deze van/naar een Atom te verzenden. U moet de grootte van het datapakket aangeven, gevolgd door wat erin in de juiste volgorde staat. Merk op dat ik in de bovenstaande code een string aan het datapakket heb toegevoegd, dus dp was ingesteld op 1. Als we iets anders wilden verzenden, bijvoorbeeld een niet-ondertekend 16-bits woord, samen met de string die we nodig zouden hebben
DataPack dp(2);
dp.appendString((char *)"Hallo wereld"); dp.appendU16(uwgegevens);
Details over het toevoegen van verschillende datatypes zijn te vinden in de Helium Docs.
Code hierboven. Dit programma stuurt herhaaldelijk "Hello World" vanaf je Helium Atom.
Stap 3: Verbinden en uploaden naar hardware
De Atom communiceert met de Bridge die verbinding maakt met het netwerk, dus beide hardwareapparaten moeten worden ingeschakeld om te kunnen werken. Als u zelf een bridge heeft, zorg er dan voor dat deze is ingeschakeld, ofwel gevoed door en aangesloten via een ethernetkabel, ofwel wordt gevoed door een stopcontact en verbonden via 3G. Het ontwikkelbord Arduino wordt gevoed door de usb die nodig is om je code erop te uploaden, maar kan ook afzonderlijk worden gevoed.
Upload uw code naar het Arduino-ontwikkelbord. Voer een programma uit op uw computer dat gebruikmaakt van een van de API's van Helium om u op uw apparaat te abonneren. Tutorial voor het abonneren via Ruby. U zou nu de gegevens moeten zien die zijn verzonden vanaf uw Helium Atom!
Als je dit nuttig vond en/of andere tutorials wilt, ping me dan gerust @WrittenAirBedankt, en veel plezier met het maken!