- PIC IoT WG Development Board:
- PIC IoT WG Hardware-overzicht
- PIC IoT WG - Software-ondersteuning
- Aan de slag met PIC IoT WG Development Board
De drie belangrijkste parameters waarmee u rekening moet houden bij het ontwikkelen van een draagbaar IoT-apparaat zijn laag stroomverbruik, draadloze connectiviteit en beveiliging. Met precies deze drie in gedachten heeft Microchip een nieuw ontwikkelbord gelanceerd, de PIC IoT WG. Het bord wordt aangedreven door een 16-bits PIC-microcontroller met ATWINC Wi-Fi-module en nog veel meer interessante dingen. In dit artikel zullen we meer leren over dit bord en hoe u het kunt gebruiken voor uw IoT-ontwerpen. Als je geïnteresseerd bent in andere IoT-ontwikkelborden, kun je ook het Arduino Nano 33 BLE-voelbord bekijken dat onlangs door Arduino is geïntroduceerd.
PIC IoT WG Development Board:
Laten we beginnen met de naam van dit bord. Het heet PIC IoT WG, waar WG staat voor WiFi en Google. Ja, Microchip en Google werken samen om ons dit prachtige ontwikkelbord te bieden dat ons kan helpen bij het ontwerpen van embedded IoT-applicaties die gemakkelijk en veilig kunnen communiceren met de Google Cloud IoT Core Services. Zoals hieronder wordt getoond, bevat het ontwikkelbord veel componenten, het heeft zijn eigen microcontroller, een wifi-module, een cryptografische co-processor, een paar sensoren en nog veel meer
PIC IoT WG Hardware-overzicht
Het bord is opgesplitst in drie secties: de opladersectie, de debuggergedeelte en de controller-sectie. Laten we elke sectie en de belangrijke componenten die erin aanwezig zijn eens bekijken.
PIC24F Microcontroller met WINC1510 Wi-Fi-module
Het controllergedeelte heeft de twee belangrijkste componenten, een is deze PIC-microcontroller, de PIC24FJ128GA705, en de andere is deze Wi-Fi-module die WINC1510 is. Wat betreft het microcontroller-gedeelte, de PIC24F is een 16-bits microcontroller met extreem laag vermogen die werkt op een klokfrequentie van 32 MHz met een geïntegreerde 12-bits ADC. En de Wi-Fi-module is ATWINC1510, ook van microchip en het is een gecertificeerde IoT-netwerkcontroller met laag vermogen. Beide apparaten zijn goed als u een IoT Edge-apparaat op batterijen probeert te ontwerpen
Cryptografische co-processor voor veilige datacommunicatie
Aan de linkerkant van de controller hebben we nog een interessant IC, een cryptografische co-processor genaamd ATECC608. Tegenwoordig worden zoveel gevoelige apparaten verbonden met de cloud, zoals hartslagmeters, apparaten voor continue glucosemonitoring, apparaten voor het volgen van activa en nog veel meer. Daarmee wordt gegevensbeveiliging een grote zorg, dit is waar de cryptografische co-processor IC ATECC608 om de hoek komt kijken. Dus wat hier gebeurt, is dat je board een privésleutel en een openbare sleutel genereert. De privésleutel wordt gebruikt om elk bericht dat vanaf dit bord wordt verzonden te versleutelen en de openbare sleutel wordt gedeeld met de mogelijke serviceprovider zoals Google IoT cloud. Wanneer dit gecodeerde bericht van ons bord de cloud bereikt, zal de cloud dit bericht verifiëren en decoderen met behulp van de openbare sleutel.
De ATECC608 IC fungeert hier als een crypto-authenticatieapparaat voor het maken en beheren van deze privé- en openbare sleutels. En de IC is vooraf geconfigureerd en voorzien voor authenticatie om plaats te vinden tussen uw bord en de Google Cloud IoT-kern. Dit betekent dat tegen de tijd dat u het bord ontvangt, de privésleutel voor uw bord al is gegenereerd en vergrendeld en in dit IC en de openbare sleutel is geregistreerd bij het microchip-sandbox-account dat wordt gehost op Google cloud IoT, op deze manier hoeft u dat niet te doen wees een netwerk- of encryptie-expert om uw IoT-apparaten te beveiligen. Later, nadat u klaar bent met het maken van prototypes, kunt u uw bord ook naar een privéregister verplaatsen.
Ingebouwde temperatuur- en lichtsensor
Aan beide kanten van de cryptografische co-processor IC hebben we twee ingebouwde sensoren die klaar zijn om te testen. Een daarvan is deze lichtsensor die TEMT6000X01 is en de andere is deze MCP9808 temperatuursensor. De lichtsensor is een eenvoudige stroomdetectiesensor die is aangesloten op een 10-bits ADC van onze PIC-controller en de temperatuursensor kan temperaturen meten tussen -20 * C tot 100 * C met een typische nauwkeurigheid van 0,25 * C en communiceert met I2C.
Ingebouwde lithium-oplader
Het PIC IoT WG-ontwikkelbord kan worden gevoed met de micro-USB-poort of met een 4,2 V lithiumbatterij die kan worden aangesloten op de accupool (witte kleur). Als u het bord nu van stroom voorziet met een batterij, heeft het bord ook een oplaad-IC die uw lithiumbatterij oplaadt via de micro-USB-poort met een laadspanning van 4.2V en een laadstroom van 100mA. Ook vind je op de hoek van het bord twee leds, de rode geeft aan dat de accu aan het opladen is en de groene geeft aan dat deze volledig is opgeladen.
PKOB - Programmeur en debugger
Het ontwikkelbord heeft ook een eigen ingebouwde programmeur, emulator en debugger genaamd PKOB. De term PKOB staat voor Pic-kit aan boord, dus velen van ons zouden eerder een aparte pic-kit hebben gebruikt om onze controllers te programmeren en debuggen, maar dit bord heeft een ingebouwde emulator en ondersteunt ook seriële communicatie, wat erg handig is voor het debuggen zonder enige vereiste voor externe hardware.
Pinout, LED's en schakelaars
Hier hebben we vier LED's met elk verschillende kleuren. De eerste is een blauwe kleur LED die gaat branden wanneer je board is verbonden met een Wi-Fi netwerk, de tweede is een groene kleur LED die gaat branden als je verbonden bent met Google cloud services, de derde is een gele kleur LED die knippert elke keer dat u gegevens naar de cloud verzendt en de vierde is een rode kleur rood die oplicht om een fout op het bord aan te geven. We hebben ook twee schakelaars SW1 en SW2 die kunnen worden gebruikt om de softAP-modus te openen.
Nu we bij de pinouts komen, heeft het bord 8-vrouwelijke headers aan beide zijden die staan als een Mikrobus-uitbreiding waarmee je een breed scala aan sensoren en modules van Mikro Elektronika kunt aansluiten. De andere algemene pinnen van de PIC-controller zijn ook toegankelijk via deze pads aan de onderkant van deze controller.
PIC IoT WG - Software-ondersteuning
Wat betreft het softwaregedeelte, heeft Microchip het een fluitje van een cent gemaakt bij het programmeren en debuggen van dit bord. Wanneer u dit bord op uw computer aansluit, wordt het ontdekt als een flash-opslagapparaat waar u uw Wi-Fi-inloggegevens kunt wijzigen of opnieuw kunt programmeren door middel van slepen en neerzetten. En dit is een 16-bits PIC-controller die kan worden geprogrammeerd met behulp van de MPLABX IDE met de XC16-compiler en het ondersteunt ook Microchips Code Configurator (MCC) voor snel programmeren en debuggen.
Ook wanneer je dit bord ontvangt, wordt het voorgeprogrammeerd en geconfigureerd voor een demo waarin we de waarden van deze lichtsensor en temperatuursensor kunnen aflezen en grafisch kunnen tekenen op het Google cloudplatform.
Aan de slag met PIC IoT WG Development Board
Pak om te beginnen een mini-USB-kabel en sluit deze aan op ons ontwikkelbord en sluit het andere uiteinde aan op uw computer. Je zult merken dat je bord oplicht en op je computer kun je een nieuwe flashdrive vinden die curiosity heet. Open de schijf en u vindt de inhoud erin zoals hieronder weergegeven.
Klik op het bestand CLICK-ME.HTM om een webpagina te openen. Voer op de webpagina de wifi-inloggegevens in en klik op downloadconfiguratie.
Hiermee wordt een bestand met de naam WiFI.config gedownload , sleep dit bestand eenvoudig naar de nieuwsgierigheidsdrive en je zult merken dat de blauwe led en het groen op je bord gaan branden om aan te geven dat je bord nu is verbonden met wifi en Google Cloud. Open de webpagina opnieuw om de status van het bord te controleren en scroll vervolgens naar beneden om de waarde van de licht- en temperatuursensor van je bord op de pagina te zien. Je kunt de video hierboven bekijken als je vragen hebt.
Op dezelfde manier kunt u ook gegevens vanuit de Google-cloud naar uw apparaat verzenden. Open gewoon seriële monitorsoftware zoals stopverf en sluit deze aan op de COM-poort van het bord, typ vervolgens een voorbeeldbericht in dit tekstvak en klik op verzenden naar het apparaat.
Zoals u kunt zien, zou de stopverfterminal het bericht moeten weergeven dat we zojuist hebben verzonden. Nadat je met dit demo-programma hebt geëxperimenteerd, kun je naar beneden scrollen om opties te vinden voor het maken van je eigen sensorknooppuntprogramma en dan is er een optie genaamd graduate waarmee je je bord van deze demo-omgeving naar een privéomgeving kunt verplaatsen. Voor meer informatie en om vanaf hier verder te gaan, is deze PIC IoT WG-gebruikershandleiding van Microchip nuttig.
Vervolgens begin je met het schrijven van je eigen code met behulp van de MPLABX IDE, ook zoals eerder verteld ondersteunt het bord MCC voor snel en eenvoudig programmeren. Dit is zo'n beetje mijn recensie over de PIC IoT WG Development Board. Ik hoop dat je het leuk vond om over het bord te weten en benieuwd bent om er iets mee te bouwen. Laat me je mening hierover weten in het commentaargedeelte en ik zal je ontmoeten in een ander recensieartikel met een ander opwindend ontwikkelbord.