Marka Sony kojarzy się przede wszystkim z elektroniką konsumencką – sprzętem RTV, telefonami, komputerami osobistymi czy też konsolami do gier takimi jak słynna PlayStation. Co ciekawe, firma Sony produkuje także układy elektroniczne przeznaczone do aplikacji przemysłowych, systemów pomiarowych, samochodów i systemów komunikacji zdalnej. Niedawno producent wdrożył do seryjnej produkcji sześciordzeniowy mikrokontroler CXD5602, który stanowi serce platformy rozwojowej Spresense Sony, dostępnej na rynku amerykańskim i europejskich, w tym także w Polsce. W tym artykule przybliżymy, jakie możliwości oferuje ten mikrokomputer.
Z myślą o projektach IoT
Przewodnim celem stojącym za powstaniem platformy Sony Spresense było opracowanie narzędzia, które umożliwi konstruktorom szybkie prototypowanie aplikacji IoT, zamiast konwencjonalnego projektowania płytki PCB z mikrokontrolerem zaprogramowanym pod konkretną aplikację. Minikomputer od Sony może działać w środowisku Spresense SDK bazującym na środowisku NuttX, a także na Arduino IDE. W zależności od tego, jaki jest cel i poziom rozbudowania naszej aplikacji, warto wybrać to środowisko, w którym mamy większe rozeznanie. Znaczna część osób z pewnością wybierze Arduino IDE jako najprostszą opcję, ale dopiero wybranie środowiska NuttX pozwoli na odkrycie pełnego potencjału płytki Spresense, choćby ze względu na możliwość pracy mikrokontrolera w trybie wielordzeniowym.
Mały, wydajny i praktyczny
Mikrokontroler umieszczony na płytce rozwojowej Spresense, odznacza się wysoką efektywnością i niskim poborem energii. Sześciordzeniowa konstrukcja ARM Cortex-M4F może wykonywać operacje obliczeniowe przy maksymalnej częstotliwości zegara wynoszącej 156MHz. Dzięki temu Spresense Sony można wykorzystać do bardziej wymagających aplikacji, które bazują np. na sztucznej inteligencji i algorytmach rozpoznawania obrazów. Kolejnym atutem, który wyróżnia produkt Sony od innych komputerów jednopłytkowych, jest wbudowany moduł GPS, który wspiera standard GPS, jak i GLONASS, co może się okazać bardzo przydatne w śledzeniu pojazdów jeżdżących, a także w nawigacji dronów, których trasa lotu jest wyznaczana na podstawie punktów orientacyjnych o określonych współrzędnych w przestrzeni. Na płytce znajdziemy także złącze umożliwiające podłączenie kamery – producent również zaprojektował swoją oficjalną kamerę kompatybilną ze Spresense. Rozdzielczość kamery wynosi 5Mpix i będzie z pewnością wystarczająca do aplikacji monitoringu, rozpoznawania obrazów, twarzy i innych zastosowań sztucznej inteligencji. Do płytki można podłączyć także czujniki akcelerometryczne oraz Bluetooth Low Energy. Za dźwięk odpowiada kodek audio o częstotliwości próbkowania 192kHz i 24-bitowej rozdzielczości oraz precyzyjny wzmacniacz, które zapewniają wysoką jakość odtwarzanych plików dźwiękowych. Na płytce zostało umieszczone gniazdo audio TRS 3,5mm, do którego możemy podłączyć głośniki, a po jego lewej stronie – slot na karty microSD.
Spresense a Arduino
Ciekawą cechą platformy Spresense jest możliwość sterowania nią przy wykorzystaniu środowiska Arduino IDE. Po uruchomieniu środowiska kompilatora i załadowaniu bootloadera, z płytki Sony możemy korzystać w identyczny sposób, jak z ,,klasycznej” płytki Arduino Uno, wykorzystując biblioteki dedykowane na Arduino. Aby sprawdzić, czy instalacja programu rozruchowego przeszła prawidłowo, możemy wykonać prosty test, poprzez uruchomienie programu, którego zadaniem jest ,,miganie” diodą LED, które w sensie sprzętowym jest naprzemiennym podawaniem stanu niskiego i wysokiego na pin mikrokontrolera, do którego dioda LED jest podłączona. Płytka Spresense może także współpracować z nakładkami Arduino Shield, przy czym należy przestrzegać, aby napięcie zasilania płytki wynosiło 5,0V. Jeśli osprzęt zewnętrzny wymaga zasilania napięciem 3,3V, możemy je ustawić za pomocą specjalnej zworki znajdującej się na płytce.