Ik herinner me dat bij het bouwen van een computer een batch S100 boards werd gebruikt. Dit waren 8-bit machines die nam een rack en misschien zelfs een bos van tuimelschakelaars en verlichting voor het programmeren. Tegenwoordig kun je aan de slag met planken die in je hand passen.

drie platforms hebben een belangrijke volgende gegenereerd wat betekent ondersteuning, veel software en hardware ondersteuning. Deze omvatten de Arduino, Raspberry Pi en BeagleBone (Fig. 1). De kleine raad in de rechterbovenhoek is een draadloze uitbreidingsraad voor Arduino. Het is gelijkaardig in grootte aan het basisarduino-platform versus de grotere digilentraad. Het zijn open source hardwareplatforms die worden ondersteund door open source software.

Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig1sm
figuur 1. Digilent ’s chipKit maakt gebruik van Microchip’ s 32-bit MIPS platform in een Arduino form factor.

Hardware voor elk platform is beschikbaar uit een breed scala van bronnen. Software is beschikbaar vanuit nog meer bronnen die alles ondersteunen, van eenvoudige seriële poorten tot 3D-sensoren zoals de Microsoft Kinect. Deze platforms kunnen worden gebruikt voor degenen die nieuw zijn voor embedded ontwikkeling of die op zoek zijn naar applicaties te ontwikkelen of bekijk de nieuwste hardware.

inhoudsopgave

  • Arduino
  • Raspberry Pi
  • BeagleBone
  • en de winnaar Is?

Arduino

Het Arduino-platform bestaat al een tijdje. It started with an 8-bit Atmel AVR processor but the platform has since expanded to include processors from Microchip’s 32-bit MIPS-based solution in Digilent’s chipKIT (Fig. 2) to the Arduino DUE (Fig. 3) is based on Atmel’s SAM3X8E Cortex-M3 microcontroller.

Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig2sm Arduino Microchip
Figure 2. Digilent’s chipKit uses Microchip’s 32-bit MIPS platform in an Arduino form factor.
Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig3 Arduino Due
Figure 3. The Arduino DUE is based on Atmel’s SAM3X8E with a Cortex-M3 processor.
  • Shielding Arduinos
  • PIC32 Arduino Modules

The two things Arduino platforms tend to have in common are Arduino shields and the software development tools. Van de drie platforms is de Arduino het dichtst bij een embedded platform omdat een display niet noodzakelijk deel uitmaakt van de oplossing. Ook de software is laag niveau vaak doen zonder enige vorm van besturingssysteem. Aanvankelijk beperkten de prestaties van microcontroller wat kon worden gesteund maar het recentste gewas van microcontrollers met 32 bits die nu het Arduino-platform domineren zijn meer dan geschikt om een werkend systeem te behandelen.

De standaard Arduino software development environment is gericht op het onderwijzen van ingebed programmeren. Het heeft zijn eigen terminologie met software wordt genoemd schetsen. Het is in wezen C met een eenvoudige IDE, maar het is aanzienlijk gevorderd van de basis 8-bit AVR en basic C ondersteuning.

De meeste platforms ondersteunen meerdere ontwikkeltools, waaronder professionele tools van de microcontroller-leveranciers en hun ondersteuning door derden. Sommige tools zijn gratis. Een deel van de uitdaging is het beheren van hardwaresteun aangezien de meeste software voor Arduino shields richt het Arduino-ontwikkelingsmilieu.

De meeste I / O wordt afgehandeld via Arduino shields. De connectoren ring het grootste deel van het bord en laat de meeste boards worden gebruikt door ze in te pluggen. De meeste kunnen worden gestapeld omdat men zelden gebruik maakt van alle I / O. Een deel van de uitdaging voor alle platforms is hoe de I/O wordt in kaart gebracht wanneer meerdere boards worden gebruikt. I2C kan bijvoorbeeld veel apparaten ondersteunen, maar ze hebben elk hun eigen I/O nodig. ook moeten SPI-chip-selecties uniek zijn.

Er zijn eigenlijk een aantal Arduino shield-vormfactoren, waarvan sommige gepatenteerd zijn. Het initiële Arduino-platform definieert de meest basale versie. De uitgebreide versies gebruikt meer connectoren die meer I/O beschikbaar op hogere prestaties microcontrollers gebruikt op nieuwere Arduino compatibele platforms bloot.

I / O-softwareondersteuning kan een probleem zijn. Gewoonlijk wordt de basis C steun verstrekt voor de ontwikkelingsomgevingen van Arduino. Meer geavanceerde ondersteuning voor apparaten zoals draadloze modules zijn meestal meer hostspecifiek. Niet alle combinaties werken samen, maar als je een hardware/software combinatie kunt bedenken dan is er waarschijnlijk een adrduino combinatie te vinden.

Raspberry Pi

Het Raspberry Pi-platform is beschikbaar bij bedrijven zoals Element 14. Het is ontworpen om een goedkoop, hoogwaardig platform te zijn dat Linux kan draaien.

het $35 Model B (Fig. 4) verdubbelt de hoeveelheid geheugen tot 512 Mbytes. Het is gebaseerd op een Broadcom bcm2835 System-On Chip (SoC) zoals de $25 Model A. De 700 MHz BCM2835 heeft een ARM1176JZF-s kern.

Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig4sm Raspberry Pi

  • Hot Raspberry Pi
  • Ouya brengt $99 Game Console Via Kickstarter

Het gebruikt een SD kaart voor opslag en draait meestal een van een aantal Linux varianten waaronder raspian, Arch, Debian en Fedora. Het draait ook RISC OS, FreeBSD, NetBSD en iemand heeft Plan 9 om op te draaien.

het bord heeft USB en 10/100 Ethernet (Model B) ondersteuning. Het kan een HDMI-scherm, composietvideo of een LCD-paneel aansturen. Het heeft een CSI verbinding voor een camera ingang. Het heeft HDMI-audio, I2S en een 3,5 mm-aansluiting. De borden vereisen 300 mA en 700 mA bij 5V voor de Model A en B respectievelijk.

De Raspberry Pi heeft een enkele uitbreidingskop met GPIO, seriële poort, SPI, I2C, I2S, 3.3 V en 5V. er zijn een aantal breakout boards beschikbaar, maar montage is een uitdaging. De Raspberry Pi heeft twee montagegaten, maar ze zijn niet te vinden op de hoeken zoals de meeste andere planken. Er zijn ook een aantal gevallen beschikbaar.

een van de grootste voordelen van de Raspberry Pi is software. De lage kosten en beschikbaarheid heeft veel interesse en veel software gegenereerd om bij te passen.

BeagleBone

Het BeagleBone-platform is vergelijkbaar met de Raspberry Pi. Het draait Linux en heeft Ethernet, USB en grafische ondersteuning als onderdeel van het basispakket. Het heeft nu een nieuwe incarnatie genaamd de BeagleBone Black (Fig. 5). Deze $ 45-versie heeft een 2 Gbyte eMMC, dus het wordt geleverd met software die klaar is om uit de doos te lopen. Het heeft ook een microSD-aansluiting zoals de Raspberry Pi en de originele $89 BeagleBone. De laatste kwam met ArchLinux op een microSD-kaart.

Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig5sm Beaglebone Black
Figuur 5. De BeagleBone Black maakt gebruik van on-board eMMC maar bevat een microSD-aansluiting voor het geval u verwijderbare opslag wilt. Dit betekent dat het kan komen met zijn eigen software klaar om te draaien wanneer u het aansluit.
  • Interview met SparkFun ’s director of Engineering
  • Little Board And Little Modules bij Design West

The BeagleBone Black is based on a Texas Instrument’ s AM335x 1GHz ARM Cortex-A8. Het heeft een 3D graphics accelerator, Neon floating-point accelerator en bevat ook een paar programmeerbare Realtime Units (PRU) die echt 32-bit microcontrollers in hun eigen recht. De Cortex-A8 is een dubbele kwestie, superscalar platform dat de rand in prestaties in vergelijking met de ARM11 van de Raspberry Pi heeft. De boards zijn voorzien van Ethernet, HDMI en USB aansluitingen.

Ik was echt onder de indruk van het totale BeagleBone pakket omdat het het enige platform is dat uit de doos werkt. Alles wat nodig is is een PC met USB en een relatief nieuw besturingssysteem. Deze laatste is nodig om de RNDIS netwerk ondersteuning te bieden via de USB-aansluiting.

in wezen sluit u de USB-kabel aan op de PC en de BeagleBone Black. De BeagleBone Black verschijnt als USB flash drive, maar het maakt ook de netwerkverbinding. Dit biedt een webinterface die draait op de BeagleBone Black. De webbrowser op de PC begint met een HTML-bestand op de flash drive, maar dat wordt omgeleid naar de webinterface.

de webinterface biedt in feite een webgebaseerde IDE en toolset naast een webgebaseerde SSH-interface. Ik zal niet ingaan op alle details van wat de BeagleBone black biedt, maar het is indrukwekkend. Dit is het voordeel van het gebruik van de eMMC flash.

de BeagleBone Black is compatibel met de uitbreidingsborden, ook wel capes genoemd, die beschikbaar zijn voor de originele BeagleBone. Deze maken gebruik van het paar 46-pin headers aan weerszijden van de BeagleBone. Deze bieden toegang tot de I/O van de microcontroller inclusief CAN , SPI en I2C plus naar USB-naar-seriële en USB-naar-JTAG interfaces. De systemen hebben ook vier bevestigingsgaten.

en de winnaar Is?

Ok. Ik ga waffelen en zeggen dat de keuze is echt afhankelijk van uw achtergrond en eisen. Als u C en ingebedde programmering zoekt dan is Arduino een goede keus omdat het u dicht bij de hardware zet. Het verstrekt ook een goede manier om microcontroller te evalueren aangezien vele verkopers Raad leveren die van Arduino uitbreidingsraad kunnen profiteren.

als software die draait op Linux of een besturingssysteem is meer van wat je wilt dan Raspberry Pi, BeagleBone of een van die varianten is waarschijnlijk een betere keuze. Ook, heavy duty display of audio klusjes worden gemakkelijker behandeld door deze twee platforms.

als basisplatform leun ik naar BeagleBone Black. De eMMC aan boord is snel en efficiënt. Het is geheugen beperkt, maar meer dan genoeg voor de meeste projecten. Ik ben ook erg onder de indruk van de ingebouwde ontwikkelingssoftware. Voor sommige Ros (robot operating system) werk heb ik de ondersteuning voor Raspberry Pi goed gevonden.

wat tegenwoordig echt interessant is, is hoe deze platforms andere ontwerpen beïnvloeden. Bijvoorbeeld, UDOO (vijg. 6) is een Kickstarter-project dat de Arduino-uitbreidingsvormfactor combineert met de functionaliteit van Raspberry Pi, en in wezen de BeagleBone. Het is een dubbele processoroplossing die met Atmel Cortex-M3 begint die in Arduino wordt gevonden toe te schrijven. Het heeft ook een dual of quad core Freescale i. MX6. zeker een heavy duty platform.

Electronicdesign Com Sites Electronicdesign com Files Uploads 2013 06 67211 Fig 6 Udoo
Figuur 6. Het UDOO Kickstarter project ondersteunt de Arduino uitbreidingsborden maar maakt gebruik van een multicore Freescale i.MX6 processor plus een SAM3X processor voor een interessante multichip combinatie.

het type werk waarvoor u het systeem wilt gebruiken, heeft beslist invloed op welk platform u kiest. Niet over het hoofd andere alternatieven zoals de $99 Ouya (zie Ouya brengt $ 99 Spelcomputer Via Kickstarter) op basis van een Nvidia Tegra 3 als software en graphics zijn waar je wilt zijn. Het draait Android en heeft WiFi en Ethernet ondersteuning.