Wat is het Arduino-platform en waar dient het voor?
Wat is Arduino?
Arduino is een kant-en-klaar hardware- en softwareplatform waarvan de belangrijkste componenten een kleine I/O-besturingskaart en een op Processing/Wiring gebaseerde ontwikkelomgeving zijn.
Het eerste prototype van de controller werd uitgebracht in 2005 toen Massimo Banzi het ontwierp voor studenten van het Institute of Interaction Design in Ivrea, Italië. De naam van het apparaat komt van de naam van koning Arduino, die in het begin van de 11e eeuw slechts twee jaar over Italië regeerde, naar wie ook de bierbar "di Re Arduino", eigendom van Massimo Banzi, is vernoemd en bevindt zich precies waar , volgens de legende wordt koning Arduin geboren.
Het doel van Arduino is om een toegankelijke omgeving te creëren voor softwareontwikkelaars, zodat ze de wereld van microcontrollerprogrammering kunnen betreden. Het programmeren van de controllers van dit bedrijf gebeurt in een eenvoudige en intuïtieve programmeeromgeving: Arduino IDE. Deze omgeving is geschikt voor zowel beginners als ervaren gebruikers.Er wordt gebruik gemaakt van de programmeertaal C++, die is aangevuld met vele bibliotheken, waardoor het werken met het apparaat eenvoudiger wordt.
Arduino heeft op internationale schaal een ware revolutie teweeggebracht op het gebied van elektronisch ontwerp. Zowel de schema's als de broncodes zijn gratis beschikbaar, daarom is Arduino zo populair geworden. Een kant-en-klaar bord kan voor slechts een paar dollar worden gekocht, of je kunt het zelf in elkaar zetten.
Het Arduino-bord heeft een eigen processor en geheugen, het is uitgerust met veel in- en uitgangen waarop verschillende sensoren kunnen worden aangesloten, evenals actuatoren en mechanismen. Er zijn momenteel meer dan 20 grote Arduino-bordmods beschikbaar.
Arduino platform microcontrollers
Het bijzondere van Arduino is dat je geen programmeur hoeft te zijn om ermee te werken, je hebt geen speciale kennis nodig van hoe een microcontroller werkt om een eenvoudig project te bouwen. De standaardbibliotheken van Arduino openen veel creativiteit in termen van het automatiseren van alles.
Programmeren gebeurt hier via een speciale software-omgeving (IDE), die gratis te downloaden is op de Arduino-website. Deze vriendelijke shell, geschreven in Java, draait op Windows, Mac OS X en Linux en bevat een teksteditor, projectmanager, preprocessor-compiler en tools om het programma rechtstreeks in de microcontroller te laden.
De microcontrollers die in Arduino worden gebruikt, hebben al een bootloader, dus een programmeur is niet nodig, sluit het bord gewoon aan op een computer via USB of via een UART-USB-adapter en download het programma.
Het bord heeft ook de mogelijkheid om de bootloader in de microcontroller te flashen met behulp van een programmer, de Arduino IDE heeft ingebouwde ondersteuning voor de meest populaire goedkope programmeurs, er is een pinconnector voor in-circuit programmering (ICSP voor AVR, JTAG voor ARM).
De meeste Arduino-apparaten gebruiken Atmel AVR ATmega328, ATmega168, ATmega2560, ATmega32U4, ATTiny85 microcontrollers met een klokfrequentie van 16 of 8 MHz. Er zijn ook op ARM Cortex M gebaseerde boards.
Arduino-poorten
Arduino UNO R3-kaart
De I/O-poorten worden gebruikt om alle elektronische componenten (LED's, motoren, sensoren, enz.) op de controllerkaart aan te sluiten. Ze worden ook wel pinnen genoemd. Dit zijn digitale, analoge of digitaal-naar-analoog interfaces die hun eigen functie hebben.
Zoals de naam al doet vermoeden, hebben we een digitaal signaal op de digitale pinnen. Ze kunnen slechts twee waarden produceren: een logische nul (0, LAAG) en een logische één (1, HOOG).
Analoog — vergelijkbaar met digitaal, met het verschil dat hun belangrijkste doel is om analoge sensoren aan te sluiten.
Om deze poorten te gebruiken (een signaal door te geven), moeten we ze in ons programma initialiseren met behulp van de functie pinMode (<pinnummer>, <mode: INPUT / OUTPUT>), waarbij het pinnummer het connectornummer is dat op het bord is gespecificeerd Arduino ... INPUT is nodig om gegevens te lezen, OUTPUT om te verzenden. Als we dergelijke pinnen gebruiken zonder vooraf pinMode op te geven, kunnen de verkregen waarden verkeerd zijn.
Digitaal-analoge poorten (of PWM — I/O met pulsbreedtemodulatie) — een intelligentere interface. Ze zijn altijd klaar om gegevens te ontvangen / verzenden en vereisen geen voorafgaande initialisatie.Hun belangrijkste voordeel is de mogelijkheid om waarden over te dragen in het bereik van 0 tot 255, wat veel meer mogelijk maakt
interfereren precies met de werking van de verbonden elementen. Deze poorten worden op het bord (en in de documentatie) aangegeven als PWM of met «~» (tilde).
Digitale en analoge pinnen — schakelende (verbindende) poorten. PWM - controlepoorten. Als het nodig is om de bedrijfsparameters van het radio-element te wijzigen, moet het worden aangesloten op PWM. Als het voldoende is om alleen een circuitelement aan/uit te zetten, kun je elke poort op de Arduino gebruiken.
Een ander en laatste belangrijk criterium voor Arduino-bordpoorten is hun fysieke samenstelling. Onthoud dat elke pin: een 5V-uitgang heeft. Het kan een maximale stroom van 0,02A geven
Dit zijn kleine criteria die belangrijk zijn om in gedachten te houden om veel tijd te besparen.
Programmeren
Om de programmeerbasis voor Arduino onder de knie te krijgen, heeft een beginner slechts een paar uur nodig, omdat het netwerk al een groot aantal video-tutorials, thematische publicaties, notities en artikelen over Arduino-ontwikkeling heeft. De basis is C++, aangevuld met eenvoudige I/O-besturingsfuncties op het bord, en meer veeleisende gebruikers zullen zelfs in Visual Studio, in ieder geval in Eclipse, of zelfs via de opdrachtregel kunnen werken.
Externe schijven en uitbreidingskaarten
In feite biedt Arduino enorme mogelijkheden voor het maken van allerlei soorten apparaten, je kunt sensoren, sloten, motoren, displays, routers en zelfs waterkokers aansluiten. U kunt het product uitbreiden met extra boards — shields bijvoorbeeld voor het werken met GPS, voor verbinding via een lokaal netwerk of internet, voor bluetooth, wifi, etc. Arduino is vooral populair in robotica.
Handig is dat je geen soldeerbout nodig hebt om extensies aan te sluiten, er worden eenvoudige pinverbindingen gebruikt, waardoor het gemakkelijk is om lay-outs te ontwerpen, ze zo ingewikkeld te maken als je wilt, over het algemeen is de ruimte voor creativiteit eindeloos.
Uitbreidingskaarten (shields) worden nu voor veel verschillende functies verkocht, ze kunnen als sandwich worden aangesloten, dankzij de handige plaatsing van de connectoren. Dit kunnen draadloze communicatiekaarten zijn, controlekaarten stappen motor, en alle andere controllers met verschillende doeleinden.
Waarom het gebruik van Arduino zo populair is
Het Arduino-platform wordt alom erkend door de ontwikkelaars van nieuwe elektronische apparaten, docenten en technische studenten, maar ook door studenten met een achtergrond van technische creativiteit.
Het gebruik van Arduino vereenvoudigt het werken met microcontrollers. Qua technische uitrusting is het ideaal voor het educatieve proces van het ontwerpen van verschillende mechatronische systemen en robots, dankzij een begrijpelijke programmeeromgeving en de mogelijkheid om fysieke processen in real time te monitoren, maar ook dankzij een begrijpelijke programmeeromgeving en een aantal andere voordelen.
Het kan worden gebruikt als onderwijs- en onderzoeksinstrument in digitale signaalverwerking, elektronica, schakelingen, robotica, automatisering, enz. Krachtiger Arduino-borden zijn toepasbaar voor het oplossen van complexe technische problemen met betrekking tot de ontwikkeling van grote projecten en hun complexe automatisering.
Arduino is de meest populaire trend die microcontrollers toegankelijk maakt voor een groot aantal mensen, zelfs experts uit de industrie. Met behulp van dit populaire platform kun je een groot aantal interessante en nuttige projecten maken.
We kunnen zeggen dat Arduino een universeel uitbreidbare programmeerbare controller-constructor is die een onmisbare assistent kan worden bij het oplossen van creatieve taken met betrekking tot elektronica van welk doel dan ook, zelfs een wekker, zelfs een complexe robot, zelfs een stappenmotor - dit alles, en niet alleen, het kan besturen volgens het gewenste algoritme met behulp van Arduino.
Een enorm aantal allerlei randapparatuur: knoppen, sensoren, LED's, LCD-indicatoren en andere organen voor interactie met de buitenwereld zijn beschikbaar om met Arduino te werken.
Op internet zijn inmiddels honderden Arduino-programma's beschikbaar die zowel beginners als gevorderden kunnen helpen bij het realiseren van hun projecten.