pamiętam, że podczas budowy komputera używałem partii płyt S100. Były to 8-bitowe maszyny, które zajmowały stojak, a nawet mogły zawierać kilka przełączników i lampek do programowania. W dzisiejszych czasach można zacząć od desek, które mieszczą się w dłoni.

trzy platformy wygenerowały znaczący wynik, co oznacza wsparcie, wiele wsparcia oprogramowania i sprzętu. Należą do nich Arduino, Malina Pi i BeagleBone (rys. 1). Mała płytka w prawym górnym rogu to Bezprzewodowa Płyta rozszerzająca dla Arduino. Jest podobny rozmiarem do podstawowej platformy Arduino w porównaniu z większą płytą Digilent. Są to platformy sprzętowe open source, które są obsługiwane przez oprogramowanie open source.

Electronicdesign witryny Com Electronicdesign com pliki przesłane 2013 06 67211 Rys1sm
Rysunek 1. ChipKit Digilent wykorzystuje 32-bitową platformę Microchip MIPS w formacie Arduino.

Sprzęt dla każdej platformy jest dostępny z wielu różnych źródeł. Oprogramowanie jest dostępne z jeszcze większej liczby źródeł obsługujących wszystko, od prostych portów szeregowych po czujniki 3D, takie jak Microsoft Kinect. Platformy te mogą być używane dla tych, którzy dopiero zaczynają korzystać z wbudowanego oprogramowania lub chcą tworzyć aplikacje lub sprawdzać najnowszy sprzęt.

spis treści

  • Arduino
  • Raspberry Pi
  • BeagleBone
  • a zwycięzcą jest?

Arduino

Platforma Arduino istnieje już od dłuższego czasu. 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. Spośród trzech platform Arduino jest najbliżej osadzonej platformy, ponieważ wyświetlacz niekoniecznie jest częścią rozwiązania. Podobnie, oprogramowanie jest niski poziom często robi bez jakiegokolwiek systemu operacyjnego. Początkowo wydajność mikrokontrolera ograniczała to, co można było obsługiwać, ale najnowsze 32-bitowe mikrokontrolery, które teraz dominują na platformie Arduino, są bardziej niż zdolne do obsługi systemu operacyjnego.

Standardowe środowisko programistyczne Arduino jest ukierunkowane na nauczanie programowania wbudowanego. Posiada własną terminologię z oprogramowaniem nazywanym szkicami. Jest to zasadniczo C z prostym IDE, ale znacznie rozwinął się z podstawowej 8-bitowej obsługi AVR i podstawowej obsługi C.

większość platform obsługuje wiele narzędzi programistycznych, w tym profesjonalne narzędzia od dostawców mikrokontrolerów i ich wsparcie stron trzecich. Niektóre narzędzia są bezpłatne. Częścią wyzwania jest zarządzanie wsparciem sprzętowym, ponieważ większość oprogramowania dla Arduino shields jest skierowana do środowiska programistycznego Arduino.

Większość I/O jest obsługiwana przez osłony Arduino. Złącza pierścienią większość płyty i pozwalają na użycie większości płyt, podłączając je. Większość z nich może być układana w stosy, ponieważ rzadko wykorzystuje się wszystkie wejścia/Wyjścia.częścią wyzwania dla wszystkich platform jest sposób mapowania wejścia/wyjścia, gdy używa się wielu płyt. Na przykład, I2C może obsługiwać wiele urządzeń, ale każdy z nich potrzebuje własnego wejścia / Wyjścia. podobnie, wybór układów SPI musi być unikalny.

w rzeczywistości istnieje wiele współczynników kształtu tarczy Arduino, niektóre zastrzeżone. Początkowa Platforma Arduino definiuje najbardziej podstawową wersję. Rozszerzone wersje wykorzystywały więcej złączy, które udostępniają więcej wejść / wyjść dostępnych na mikrokontrolerach o wyższej wydajności używanych na nowszych platformach kompatybilnych z Arduino.

obsługa oprogramowania We/Wy może być problemem. Zwykle podstawowe wsparcie C jest zapewnione dla środowisk programistycznych Arduino. Bardziej zaawansowane wsparcie dla urządzeń, takich jak Moduły bezprzewodowe, jest zwykle bardziej specyficzne dla hosta. Nie wszystkie kombinacje będą działać razem, ale jeśli możesz wymyślić kombinację sprzętu / oprogramowania, prawdopodobnie można znaleźć kombinację Adrduino.

Raspberry Pi

Platforma Raspberry Pi jest dostępna od firm takich jak Element 14. Został zaprojektowany jako tania, wysokowydajna Platforma zdolna do uruchamiania Linuksa.

$35 Model B (rys. 4) podwaja ilość pamięci do 512 MB. Jest on oparty na chipie Broadcom BCM2835 System – on (SoC), takim jak model a za 25 USD.BCM2835 o częstotliwości 700 MHz ma rdzeń ARM1176JZF-S.

Electronicdesign witryny Com Electronicdesign com pliki przesłane 2013 06 67211 Fig4sm Raspberry Pi

  • Hot Raspberry Pi
  • Ouya przynosi 99 $Konsoli Do Gier za pośrednictwem Kickstartera

używa karty SD do przechowywania i zazwyczaj uruchamia jeden z wielu wariantów Linuksa, w tym raspian, Arch, Debian i Fedora. Działa również RISC OS, FreeBSD, NetBSD i ktoś ma Plan 9, aby uruchomić na nim.

Płyta posiada obsługę USB i 10/100 Ethernet (Model B). Może sterować wyświetlaczem HDMI, kompozytowym wideo lub panelem LCD. Ma połączenie CSI dla wejścia kamery. Posiada HDMI audio, a także I2S i gniazdo 3,5 mm. Płyty wymagają odpowiednio 300 mA i 700 mA przy 5V dla Modelu A I B.

Raspberry Pi ma jeden nagłówek rozszerzenia z GPIO, port szeregowy, SPI, I2C, I2S, 3.3 V i 5V. istnieje wiele płyt breakout dostępne, ale montaż jest wyzwaniem. Raspberry Pi ma dwa otwory montażowe, ale nie znajdują się one na rogach, jak większość innych płyt. Istnieje również wiele przypadków.

jedną z największych zalet Raspberry Pi jest oprogramowanie. Jego niski koszt i dostępność wygenerowały duże zainteresowanie i wiele oprogramowania do dopasowania.

BeagleBone

Platforma BeagleBone jest podobny do Raspberry Pi. Działa pod Linuksem i obsługuje Ethernet, USB i grafikę jako część pakietu podstawowego. Teraz ma nowe wcielenie o nazwie Beaglebone Czarny (rys. 5). Ta wersja $45 mA 2 Gbyte eMMC, więc jest dostarczana z oprogramowaniem gotowym do uruchomienia po wyjęciu z pudełka. Posiada również gniazdo microSD jak Raspberry Pi i oryginalny $ 89 BeagleBone. Ten ostatni przyszedł z ArchLinux na karcie microSD.

Electronicdesign witryny Com Electronicdesign com pliki przesłane 2013 06 67211 Fig5sm Beaglebone Black
Rysunek 5. Beaglebone Czarny wykorzystuje na pokładzie eMMC ale zawiera gniazdo microSD tylko w przypadku, gdy chcesz wymienną pamięć masową. Oznacza to, że może być dostarczany z własnym oprogramowaniem gotowym do uruchomienia po podłączeniu.
  • wywiad z dyrektorem inżynierii SparkFun
  • Mała tablica i małe moduły w Design West

Beaglebone Black jest oparty na Texas Instrumentu AM335x 1GHz ARM Cortex-A8. Posiada akcelerator grafiki 3D, akcelerator zmiennoprzecinkowy NEON, a także parę programowalnych jednostek czasu rzeczywistego (PRU), które są tak naprawdę 32-bitowymi mikrokontrolerami. Cortex-A8 to Podwójna kwestia, Platforma superscalar, która ma przewagę w wydajności w porównaniu do ARM11 Raspberry Pi. Płyty posiadają złącza Ethernet, HDMI i USB.

byłem naprawdę pod wrażeniem ogólnego pakietu BeagleBone, ponieważ jest to jedna platforma, która działa po wyjęciu z pudełka. Wszystko, co jest potrzebne, to komputer z USB i stosunkowo nowy system operacyjny. Ten ostatni jest wymagany do zapewnienia obsługi sieci RNDIS za pośrednictwem połączenia USB.

zasadniczo podłączyć kabel USB do komputera i Beaglebone Czarny. Beaglebone Czarny pojawia się jako USB flash drive, ale również sprawia, że połączenie sieciowe. Zapewnia to interfejs internetowy działa na BEAGLEBONE czerni. Przeglądarka internetowa na komputerze zaczyna się od pliku HTML na dysku flash, ale przekierowuje do interfejsu internetowego.

interfejs webowy w rzeczywistości dostarcza IDE i zestaw narzędzi internetowych oprócz interfejsu SSH. Nie będę dostać się do wszystkich szczegółów tego, co Beaglebone Czarny zapewnia, ale to jest imponujące. Jest to zaleta korzystania z eMMC flash.

Beaglebone Czarny jest kompatybilny z płyt rozszerzeń, zwany także peleryny, dostępne dla oryginalnego BeagleBone. Te używają pary 46-pin nagłówki po obu stronach BeagleBone. Zapewniają one dostęp do we/wy mikrokontrolera, w tym CAN , SPI i I2C plus, do interfejsów USB-to-serial i USB-to-JTAG. Systemy posiadają również cztery otwory montażowe.

a zwycięzcą jest?

Ok. Będę gofrem i powiem, że wybór jest naprawdę zależny od Twojego pochodzenia i wymagań. Jeśli chcesz nauczyć się programowania C i wbudowanego, Arduino jest dobrym wyborem, ponieważ stawia cię blisko sprzętu. Zapewnia również dobry sposób na ocenę mikrokontrolera, ponieważ wielu dostawców dostarcza płyty, które mogą skorzystać z płyt rozszerzeń Arduino.

Jeśli oprogramowanie, które działa na Linuksie lub systemie operacyjnym jest więcej tego, co chcesz Następnie Malina Pi, BeagleBone lub jeden z tych wariantów jest prawdopodobnie lepszym wyborem. Podobnie, wyświetlacz heavy duty lub obowiązki audio są łatwiejsze w obsłudze przez te dwie platformy.

jako platforma bazowa, pochylam się w kierunku Beaglebone Black. Wbudowany eMMC jest szybki i wydajny. Jest to pamięć ograniczona, ale więcej niż wystarczająca dla większości projektów. Jestem również pod wrażeniem wbudowanego oprogramowania programistycznego. Dla niektórych prac ROS (robot operating system) znalazłem wsparcie dla Raspberry Pi być dobry.

to, co jest naprawdę interesujące w dzisiejszych czasach, to jak te platformy wpływają na inne projekty. Na przykład UDOO (rys. 6)jest projekt Kickstarter, który łączy w sobie Arduino rozszerzenie współczynnik kształtu z funkcjonalnością Malina Pi, i zasadniczo BeagleBone. Jest to rozwiązanie dwuprocesorowe, które zaczyna się od ATMEL Cortex – M3 znalezionego w Arduino Due. Ma również dwurdzeniowy lub czterordzeniowy Freescale i. MX6. zdecydowanie ciężka Platforma.

strony Electronicdesign Com Electronicdesign com pliki przesłane 2013 06 67211 rys. 6 Udoo
Rysunek 6. Projekt UDOO Kickstarter obsługuje płyty rozszerzeń Arduino, ale wykorzystuje wielordzeniowy procesor Freescale i. MX6 plus procesor SAM3X dla ciekawej kombinacji multichipów.

rodzaj pracy, do której zamierzasz korzystać z systemu, zdecydowanie wpływa na to, jaką platformę wybierzesz. Nie przeocz innych alternatyw, takich jak Ouya za 99 USD (zobacz Ouya przynosi konsolę do gier za 99 USD za pośrednictwem Kickstartera) opartą na NVidia Tegra 3, Jeśli oprogramowanie i grafika są tam, gdzie chcesz być. Działa na Androida i obsługuje WiFi i Ethernet.