IIoT edge-ontwikkeling – HTTP-connectiviteit implementeren
Noot van de redactie:het Industrial Internet of Things (IIoT) belooft diepgaand inzicht te geven in industriële operaties en de efficiëntie van verbonden machines en systemen te verbeteren. Grootschalige IIoT-applicaties vertrouwen op gelaagde architecturen om gegevens van een breed scala aan sensoren te verzamelen, gegevens betrouwbaar en veilig naar de cloud te verplaatsen en analyses uit te voeren die nodig zijn om dat inzicht en die efficiëntie te leveren. In Industrial Internet Application Development geven de auteurs een gedetailleerd onderzoek van de IIoT-architectuur en bespreken ze benaderingen om te voldoen aan de brede vereisten die aan deze systemen zijn verbonden.
Aangepast van Industrial Internet Application Development, door Alena Traukina, Jayant Thomas, Prashant Tyagi, Kishore Reddipalli.
Hoofdstuk 3. IIoT Edge-ontwikkeling (vervolg)
Door Alena Traukina, Jayant Thomas, Prashant Tyagi, Kishore Reddipalli
Protocol op toepassingsniveau – HTTP
In deze sectie zullen we proberen een eenvoudige IoT-toepassing te bouwen voor het verzenden van gegevens van een DHT-12 temperatuur- en vochtigheidssensor naar een ontvangend apparaat, met behulp van een Raspberry Pi-hub en het HTTP-protocol:
Gegevensstroom van een DHT-12-sensor naar een ontvanger
HTTP biedt een verscheidenheid aan gebruiksopties en is een van de meest populaire protocollen op internet. Elke keer dat u een website opent of een mobiele applicatie uitvoert, is dit hoogstwaarschijnlijk het HTTP-protocol dat u gebruikt.
In de volgende tabel vindt u een meer gedetailleerde beschrijving van het protocol om te zien of het geschikt is voor uw behoeften:
Sleutel Waarde Open sourceJaOSI-laagToepassingDatatypesTekst, HTML, script, stijl, lettertype, JSON, XML, stream, binairBeperkingenNiet geschikt voor grote hoeveelheden binaire gegevensMogelijke bewerkingenVerzenden/ontvangen gegevensLatencyLaagGebruikOn-demand verzoekenBeveiligingjaCompressiejaVoor het bouwen van de applicatie hebben we het volgende nodig.
Vereiste software:
- Node.js 6+ (https://nodejs.org/en/download/)
- Het aanvraagpakket (https://www.npmjs.com/package/request)
- Het rpi-dht-sensor-pakket (https://www.npmjs.com/package/rpi-dht-sensor)
- Docker (https://docs.docker.com/engine/installation/)
Vereiste hardware:
- Raspberry Pi 3 (model B) Een voedingsadapter (2A/5V)
- Een microSD-kaart (8 GB+) en een SD-adapter
- Een DHT-12 temperatuur- en vochtigheidssensormodule Een breadboard en een set dupont-kabels
- Een Ethernet-kabel voor een bekabelde netwerkverbinding
Een apparaat in elkaar zetten
Voordat je een applicatie bouwt, moet je een DHT-12-sensor via een breadboard op een Raspberry Pi aansluiten.
Een SD-kaart voorbereiden
Om een SD-kaart voor te bereiden, volgt u de volgorde van acties zoals beschreven:
- Download de nieuwste Raspbian LITE-afbeelding (beschikbaar op https://raspberrypi.org/downloads/raspbian/).
- Sluit je SD-kaart aan op een computer en gebruik Etcher (https://io/) om het Raspbian .img-bestand naar de SD-kaart te flashen.
- SSH inschakelen:
cd /Volumes/boot
touch ssh
- Als u wifi wilt inschakelen, maakt u het configuratiebestand met de volgende inhoud:
network={
ssid=”YOUR_SSID”
psk=”YOUR_WIFI_PASSWORD”
}
- Maak de /home/pi/sensor map
- Maak de /home/pi/sensor/package.json bestand met de volgende inhoud:
{
“name”:“sensor”,
“version”:“1.0.0”,
“description”:“”,
“main”:“index.js”,
“scripts”:{
“start”:“node index.js”,
“ test”:“echo “Fout:geen test gespecificeerd” &&exit 1″
},
“author”:“”,
“license”:“ISC”,
“ afhankelijkheden":{
"verzoek":"^2.81.0",
"rpi-dht-sensor":"^0.1.1"
}
}
- Maak de /home/pi/sensor/index.js bestand, ter vervanging van REMOTE-SERVER-ADRES.com met een reële waarde. Het bestand moet het volgende bevatten:
var rpiDhtSensor =required('rpi-dht-sensor');
var request =required('request');
var receiver ='http://REMOTE-SERVER-ADDRESS.com:8080';
var dht =new rpiDhtSensor.DHT11(2 );
function read () {
var readout =dht.read();
var data ={
temperatuur:readout.temperature.toFixed(2),
vochtigheid:readout.humidity.toFixed(2)
};
console.log (data);
data.device ='raspberry';
request.post({url:receiver, form:data}, function(err) {
if(err) console.log ('Kan niet verzenden naar ' + ontvanger);
});
setTimeout(read, 1000);
}
read();
- Maak het /home/pi/sensor/Dockerfile bestand met de volgende inhoud:
VAN hypriot/rpi-node:boron-onbuild
Internet of Things-technologie
- Hyperconnectiviteit vraagt om een breder perspectief
- Edge computing:5 mogelijke valkuilen
- Industrie 4.0 upgraden met edge-analyse
- 5 trends in connectiviteit
- Top 10 IIoT-platforms
- IIoT-trends en uitdagingen om te bekijken
- Veranderen edge computing en IIoT de manier waarop we over data denken?
- Wat is IIoT?
- De rand is nu het middelpunt van de actie
- Waarom bedrijven edge-analyse implementeren in hun werk?
- Automotive aan de rand