Inhoudsopgave:
- Stap 1: Arduino instellen
- Stap 2:
- Stap 3: Arduino seriële monitor
- Stap 4: Log in op Sigfox
- Stap 5: Sigfox-apparaatpagina
- Stap 6: Sigfox terugbellen
- Stap 7: Sigfox nieuwe terugbellen
- Stap 8: Sigfox Callback-type maken
- Stap 9: Sigfox naar AWS CloudFormation
- Stap 10: AWS Stack-creatie 1
- Stap 11: AWS Stack-creatie 2
- Stap 12: Locatie AWS-accountnummer
- Stap 13: Locatie AWS-accountnummer
- Stap 14: AWS-stack maken
- Stap 15: Finale AWS Stack-creatie
- Stap 16: AWS-stackdetails
- Stap 17: AWS-stackdetails 2
- Stap 18: Sigfox Callback Creation Final
- Stap 19: Sigfox Callback Creatie Controle
- Stap 20: AWS-DynamoDB-tabel maken
- Stap 21: AWS- DynamoDB-tabel maken 2
- Stap 22: Toegang tot de AWSIot-console
- Stap 23: Regel voor AWS DynamoDB maken
- Stap 24: AWS DynamoDB Een actie toevoegen
- Stap 25: AWS DynamoDB een actie toevoegen
- Stap 26:
- Stap 27: Aanmaken van AWS DynamoDB-rollen
- Stap 28: Einde van het aanmaken van AWS DynamoDB-rollen
- Stap 29:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
I. INLEIDING
1. De auteur
Mijn naam is Hooi Yong Hua en ik kom uit Singapore Polytechnic, Diploma of Computer Engineering.
Ik maak deel uit van een groep die uit 3 leden bestaat; Low Jun Qian, Takuma Kabeta en ikzelf.
Deze instructable maakt deel uit van een project om gegevens van sensoren via internet naar een eindapparaat te sturen en uit te voeren
bedrijfsanalyses. Onze projectbegeleider is de heer Teo Shin Jen.
2. Doelstelling
Stuur analoge gegevens van een sensor (DS18B20) met behulp van een Arduino met Sigfox Shield via internet naar sigfox-servers en push de gegevens vervolgens naar AWS (Amazon Web Services Cloud) en sla deze op in AWS Dynamo DataBase (DynamoDB)
3. Doel
Om de instructies voor het testen van Sensor naar Arduino naar Sigfox naar AWS-gegevensoverdracht te vereenvoudigen en alle informatie op één plek te verzamelen. Voor meer details, vooral over sigfox naar AWSIot Connectivity, wordt het ten zeerste aanbevolen om het originele artikel van AWS te lezen
3. Vereiste vaardigheden:
1. Bekend met Arduino IDE, inclusief het toevoegen van een bibliotheek en het uploaden van code naar het Arduino-bord. 2. Basiskennis van Amazon Web Service, met name Stack maken, DynamoDB en regels maken.
3. Sigfox-abonnement al geactiveerd hebben en berichten (gegevens) van Sigfox-apparaat naar SigFox Cloud kunnen verzenden
II. Opstelling
A. Hardware
1. Arduino Uno x1
2. Sigfox Arduino-schild: UnaShield_RC1692HP-SIG (versie 1A) x1
3. Radio Antannae x1
4. USB B naar A-kabel (om Arduino op pc aan te sluiten) x1
5. Sensorconfiguratie (BreadBoard, temperatuursensor DS18B20, 3x mannelijk naar mannelijk connectoren; 1 spanning [rood] 1 aarde [zwart] 1 gegevens [wit])
B. Software
1. Arduino IDE (versie 1.8.1 werd gebruikt in deze tutorial)
2. Arduino-bibliotheek genaamd Unabiz Arduino Master Library met Send - Light - Level-voorbeeld geïnstalleerd
C. Account (online) & abonnementen
1. Sigfox Server-abonnement (wordt geleverd met Sigfox-apparaten)
2. Amazon AWS-account met toegang tot cloudformation (Stack Creation) & DynamoDB
IV-referenties:
aws.amazon.com/blogs/iot/connect-your-dev….
Stap 1: Arduino instellen
A. De eerste stap is om de voorbeeldschets te uploaden en het lichtniveau naar de Arduino te sturen.
Open hiervoor de arduino IDE, klik op de volgende woorden in volgorde: Bestand > Voorbeeld > unabiz-arduino-master (onder subsectie Aangepaste bibliotheken) > send-light-level. Raadpleeg afbeelding 5 Als een van de bovengenoemde woorden waarop moet worden geklikt, ontbreekt, installeer dan de unabiz arduino-masterbibliotheek opnieuw (stappen in bijlage 1). Herhaal stap 1.
B. Wijzig de deviceid in uw sigfox-apparaat.
De regel code die moet worden gewijzigd is (getoond in afbeelding)
static const String device = "xxxxx"; // Stel dit in op uw apparaatnaam als u UnaBiz Emulator gebruikt.
C. Verifieer en upload code naar Arduino Sigfox Device.
(Vergeet niet om het juiste bord (in dit geval arduino uno) en seriële poort te selecteren)
Stap 2:
Stap 3: Arduino seriële monitor
Selecteer bij de Arduino IDE tools gevolgd door Serial Monitor. Het zou Message.addfield en Radiocrafts.sendmessage: moeten weergeven. Het Radiocrafts.sendmessage: wordt gevolgd door de sigfox deviceid
Stap 4: Log in op Sigfox
1. Log in op
Stap 5: Sigfox-apparaatpagina
2. Klik op het tabblad Apparaat. Ten tweede, controleer de laatst geziene kolom (C) om er zeker van te zijn dat sigfox nog steeds actief gegevens verzendt.
Als na ongeveer 15-20 minuten het verschil tussen de huidige tijd en de tijd die daar wordt weergegeven niet is afgenomen, is er mogelijk een probleem met de sigfox.
Klik vervolgens op het in gebruik zijnde Sigfox-apparaat onder de kolom Apparaattype (B).
U wordt naar de sectie Apparaattype gebracht
Stap 6: Sigfox terugbellen
Selecteer Terugbellen in het paarse linkerdeelvenster (omcirkeld in rood)
Stap 7: Sigfox nieuwe terugbellen
Klik op het woord Nieuw in de rechterbovenhoek onder de uitlogknop (rood omcirkeld).
Stap 8: Sigfox Callback-type maken
5. Selecteer AWS IOT in de lijst met callbacks Type beschikbaar. (Het is de tweede positie). U wordt naar de volgende pagina gebracht
Stap 9: Sigfox naar AWS CloudFormation
Selecteer de Launch Stack-knop (A).
U wordt doorgestuurd naar de AWS CloudFormation Stack-pagina maken, (Een sjabloon maken) subsectie.
(Als u nog niet eerder bij aws heeft ingelogd, moet u dit nu doen)
Let op de externe ID (B) aangezien deze later zal worden gebruikt
De regio (C) voor singapore is ap-southeast-1. Raadpleeg https://docs.aws.amazon.com/general/latest/gr/ran… voor andere regio's.
Stap 10: AWS Stack-creatie 1
Zorg ervoor dat de knop naast Specificeer een Amazon S3-sjabloon-url (A).
Selecteer het woord VOLGENDE in de rechterbenedenhoek (B).
u wordt naar de volgende pagina gebracht (Specificeer Detail Subsectie)
Stap 11: AWS Stack-creatie 2
Op deze pagina (Specificeer details) moet u 5 vakken invullen, namelijk Stack Name, AWSAcountID, ExternalID, Region en TopicName.
Gedetailleerde instructies vindt u hieronder. Klik op Volgende nadat u klaar bent (rechtsonder in de hoek).
Gebruik eerst voor Stackname SigFoxIotConnector.
Ten tweede voor externe ID, gebruik de informatie die is genoteerd in stap 6 Externe ID, gebruik de informatie die is genoteerd in stap 6
Ten derde voor regio, gebruik Ap-Southeast-1 (voor Singapore) of raadpleeg deze link:
Gebruik ten vierde voor TopicName sigfox.
Ten slotte voor AWS-account-ID wordt dit in de volgende stap besproken
Stap 12: Locatie AWS-accountnummer
open AWS Console op een aparte pagina door op deze link te klikken: https://ap-southeast-1.console.aws.amazon.com/con… (of op een andere manier)
Klik op de ondersteuningsknop in de rechterbovenhoek waardoor het menu naar beneden zal vallen
Klik vervolgens op het ondersteuningscentrum in het vervolgkeuzemenu.
Stap 13: Locatie AWS-accountnummer
Dit brengt u naar de pagina van het ondersteuningscentrum, die de account-ID in de rechterbovenhoek toont, onder de ondersteuningsknop.
Transplanteer het nummer (AWS-accountnummer) naar AWS AccountID in stap 9 en klik op Volgende in de rechterbenedenhoek van die pagina.
Stap 14: AWS-stack maken
9. Deze pagina (Opties) is niet nodig voor deze tutorial. klik op volgende in de rechterbenedenhoek brengt u naar de beoordelingspagina
Stap 15: Finale AWS Stack-creatie
Controleer op de beoordelingspagina of alle ingevoerde informatie juist is en vink onder de subsectiemogelijkheden het vakje ernaast aan
de zin "Ik erken dat AWS CloudFormation IAM-resources kan maken."
Druk ten slotte op de knop Maken (rechtsonder op het scherm) om de stapel te maken.
U keert terug naar de Cloud Formation Management Console.
Stap 16: AWS-stackdetails
t de Cloudformation-beheerconsole moet de nieuw gemaakte stapel na 2-10 minuten CREATE_COMPLETE in de statuskolom weergeven
Klik op de stapelnaam om er details over te bekijken.
Stap 17: AWS-stackdetails 2
Zoek de sectie Uitvoer en klik op de pijl ervoor.
Kopieer de waardekolom van de ARN-rol en controleer of de andere waarden correct zijn.
Stap 18: Sigfox Callback Creation Final
Schakel terug naar de callback-setup van de SigFox-website (stap 7; Van waar de llaunch-stackknop zich bevindt) en vul alle resterende vakken in, behalve aangepaste payload-configuratie.
Kopieer de bovengenoemde ARN-rol naar deze.
Kopieer en plak de onderstaande code voor de Json Body.
Nadat alles is gedaan, selecteert u OK. De volgende pagina toont de terugbelverbindingen voor het geselecteerde sigfox-apparaat
Stap 19: Sigfox Callback Creatie Controle
Zorg ervoor dat er geen fouten zijn en dat de [POST]-link onder het informatiegedeelte vergelijkbaar is met de afbeelding.
Stap 20: AWS-DynamoDB-tabel maken
Selecteer DynamDB in het amazon-menu en klik vervolgens op tabel maken
Stap 21: AWS- DynamoDB-tabel maken 2
Vul alle lege vakjes in.
Voor Tabelnaam, zet sigfox; Voor Partitiesleutel typt u deviceid, gevolgd door het vakje sorteersleutel aan te vinken en tijdstempel in te voeren.
klik op maken om te voltooien (raak geen niet-vermelde instellingen aan). Wacht even totdat de tabel volledig is gegenereerd.
Stap 22: Toegang tot de AWSIot-console
Open de AWS-console, kies AWS Iot, selecteer Regel en selecteer vervolgens Regel maken
Stap 23: Regel voor AWS DynamoDB maken
4. Wijs de Name Sigfox, * toe aan attributen en zet als laatste sigofox bij het topic filter.
Stap 24: AWS DynamoDB Een actie toevoegen
Vervolgens moet u de actie maken. Selecteer Actie toevoegen en kies op zijn beurt "een bericht in DynamoDB invoegen".
Stap 25: AWS DynamoDB een actie toevoegen
Gebruik dezelfde naam (sigfox) om de tabelnaam in te vullen.
De hash- en regensleutel zouden zichzelf automatisch moeten genereren.
Vul Hash Key Value in met ${device} en RangeKeyData Value met ${ timestamp()}onder het schrijfbericht.
Vul ten slotte het vak met het label "Schrijf berichtgegevens naar deze kolom" in met payload (niet omcirkeld)
Foto wordt hieronder getoond:
Stap 26:
Stap 27: Aanmaken van AWS DynamoDB-rollen
Vervolgens moet u een nieuwe rol maken. voer onder de IAM-rolnaam dynamodbsigfox in, klik op rol maken en klik vervolgens op actie toevoegen
Stap 28: Einde van het aanmaken van AWS DynamoDB-rollen
Klik ten slotte op Regel maken om alles af te ronden. (voeg de rechter benedenhoek toe)
Stap 29:
Ga nu terug naar DynamoDB Table en zie dat de tabel wordt gevuld
Opmerking: als er niets op de tafel wordt weergegeven, kan een mogelijk probleem zijn dat de AWS-console zich in de verkeerde regio bevindt. Zorg ervoor dat de regio waarin de aws-console zich bevindt, dezelfde is als de regio die wordt aangegeven in de Stack Creation