[PROJEKT] Moduł telemetryczny M2M na bazie zestawu FRDM-KL25Z (KINETIS L)
Przedstawiamy zaprojektowany i wykonany przez autora moduł telemetryczny M2M, którego konstrukcja bazuje na zestawie FREEDOM KL25Z firmy Freescale oraz module komunikacyjnym GSM – M95 firmy Quectel. Urządzenie wykonuje pomiary: temperatury powietrza, wilgotności powietrza i ciśnienia atmosferycznego, uzyskane wyniki wyświetla na wyświetlaczu i wysyła je do użytkownika wiadomością SMS, umożliwia także za pomocą wiadomości SMS włączanie/wyłączanie dołączonych do systemu urządzeń.
Pojęcie M2M
M2M to skrót, którego rozwinięciem jest hasło „Machine to Machine”. Pojęcie to nie jest nowe i funkcjonuje od lat, jednak dopiero od niedawna można mówić o jego ogromnej popularności. Co zatem oznacza? Udzielenie odpowiedzi na to pytanie prawdopodobnie sprawiłoby kłopot niejednej osobie. Jest tak, gdyż M2M nie jest związane z konkretną usługą, ani też konkretnym produktem. Czym zatem jest M2M? Można określić je jako koncepcję, według której urządzenia elektroniczne mogą komunikować się ze sobą bez udziału człowieka (komunikacja rozumiana jest jako przesyłanie informacji). Z jakimi rozwiązaniami należy zatem kojarzyć M2M? Po pierwsze są to technologie związane z transmisją danych, zarówno przewodową, jak też bezprzewodową (np. GSM, LTE, ZigBee, Wi-Fi, NFC, Bluetooth). Po drugie są to podzespoły wykorzystujące technologie M2M (np. moduły transmisji danych). Po trzecie są to kompletne systemy, w których zastosowano podzespoły M2M.
Nie sposób jest w kilku zdaniach opisać wszystkie rodzaje występujących systemów M2M. Dla pewnego rozeznania lepszym rozwiązaniem jest wymienienie jednej z grup takich systemów wraz z podaniem przykładów. Taką grupą może być np. Smart City (tak zwane inteligentne miasto), a więc systemy M2M znajdujące zastosowanie w środowisku miejskich, usprawniające życie mieszkańców. Są to przykładowo systemy parkingowe, wypożyczalnie rowerów, inteligentne liczniki (np. wody, energii), terminale płatnicze, systemy zarządzające oświetleniem ulicznym oraz sygnalizacją świetlną, systemy śledzenia przesyłek/floty pojazdów i wiele, wiele innych.
Koncepcja działania wykonanego systemu M2M
Rozwiązania M2M nierzadko wykorzystywane są do zastosowań telemetrycznych, a więc przesyłania wartości pomiarowych na odległość. Tego typu system został zaprojektowany i zbudowany przez autora. Pierwszą funkcjonalnością systemu jest wykonywanie pomiaru wielkości będących podstawowymi parametrami środowiskowymi: temperatury powietrza, wilgotności powietrza i ciśnienia atmosferycznego. Drugą funkcjonalnością jest udostępnianie użytkownikowi danych z czujników. Może się to odbywać na dwa sposoby: poprzez wizualizację wyników pomiarów w formie liczbowej na wyświetlaczu LCD, bądź poprzez wysłanie wiadomości SMS z treścią będącą również liczbową reprezentacją wyników pomiarów. Trzecią funkcjonalnością jest możliwość zdalnego włączania lub wyłączania przez użytkownika urządzeń dołączonych do systemu. Realizowane jest to poprzez wysłanie przez użytkownika wiadomości SMS z określoną treścią.
Sposób w jaki użytkownik komunikuje się z systemem przez sieć GSM zaprezentowano w tabeli 1. Schemat ilustrujący działanie systemu pokazano na rysunku 1.
Tab.1. Sposób komunikacji użytkownika z systemem M2M
Treść wiadomości SMS wysłana przez użytkownika do systemu |
Reakcja systemu |
Treść odpowiedzi SMS systemu |
Cyfra ‘1’ |
Włączenie dołączonego do systemu urządzenia |
SMS nie jest wysyłany |
Cyfra ‘2’ |
Wyłączenie dołączonego do systemu urządzenia |
SMS nie jest wysyłany |
Cyfra ‘3’ |
Odesłanie SMSa z danymi z czujników |
„temperatura: XX oC, wilgotność: XX %, cisnienie XXXX hPa”* |
* X – wartość cyfry wyniku pomiaru
Rys. 1. Idea działania systemu
System o opisanej funkcjonalności może mieć bardzo praktyczne zastosowanie. Może on służyć jako rozwiązanie do zdalnego monitoringu i zmiany jakości powietrza wewnątrz budynku/obiektu np. mieszkania lub szklarni. Aby tak się stało, wystarczy jako urządzenia dołączone do systemu wykorzystać zasilane elektrycznie przyrządy do zmiany parametrów środowiskowych np. klimatyzację, wentylację itp. W takiej sytuacji użytkownik poprzez wiadomość SMS uzyskuje informację o wartości mierzonych przez system wielkości. W sytuacji, gdy są one niezgodne z oczekiwaniami, użytkownik poprzez wiadomość SMS może zadecydować o włączeniu dołączonych urządzeń. Po upływie pewnego czasu użytkownik ponownie sprawdza wartości mierzonych wielkości i jeśli go one satysfakcjonują, może zadecydować o wyłączeniu urządzeń.
Budowa wykonanego systemu M2M
System o opisanej powyżej funkcjonalności powinien składać się z określonych bloków funkcjonalnych. Są to: blok sterujący systemem, blok czujników, blok włączający/wyłączający dołączone urządzenia, blok komunikacji, blok wizualizacji danych oraz blok zasilania. Schemat pokazujący sposób w jaki połączone zostały ze sobą elektrycznie bloki funkcjonalne systemu przedstawiono na rysunku 2. Każdy z bloków zostanie oddzielnie przedyskutowany.
Rys. 2. Schemat blokowy budowy systemu
Prezentację budowy systemu rozpocznie opis bloku sterującego. Tworzy go płytka z mikrokontrolerem. Jest nią FRDM-KL25Z (fotografia 3) – tania platforma sprzętowa dla mikrokontrolerów Kinetis L z rdzeniem Cortex-M0+ firmy Freescale. Na płytce umieszczono nie tylko mikrokontroler (model MKL25Z128VLK4 wyposażony w 128 kB pamęci Flash i 16 kB pamięci SRAM), ale także między innymi zintegrowany programator/debuger OpenSDA z interfejsem USB, dzięki czemu FRDM-KL25Z stanowi kompletną platformę uruchomieniową. Ponadto na płytce znajdują się sygnałowe gniazda rozszerzeniowe pozwalające w łatwy sposób podłączyć do mikrokontrolera dodatkowe układy i moduły elektroniczne, dioda LED RGB, dotykowy suwak pojemnościowy oraz czujnik przyspieszenia (akcelerometr).
Fot. 3. Zdjęcie płytki FRDM-KL25Z
Drugim blokiem funkcjonalnym systemu są czujniki parametrów środowiskowych. Do pomiaru temperatury powietrza, wilgotności powietrza oraz ciśnienia atmosferycznego wybrano odpowiednio czujnik STLM20 firmy STMicroelectronics, HIH-5031 firmy Honeywell oraz MP3H6115A firmy Freescale. Cechą wspólną wszystkich trzech czujników jest taki sam interfejs – analogowy napięciowy. Jeden interfejs czujnikowy upraszcza programową implementację czujników w systemie. Do obsługi czujników analogowych mikrokontroler wykorzystuje przetwornik A/C. Wymagane są trzy kanały przetwornika (jeden dla każdego czujnika). Przetwornik dokonuje w każdym kanale próbkowania napięcia wytwarzanego na wyjściu czujnika, po czym konwertuje je na postać cyfrową. Następnie wartości liczbowe odpowiadające poziomom napięcia zostają podstawione do wzorów (podanych przez producentów w dokumentacji czujników) określających zależność między napięciem a mierzoną wielkością. Tak wyznaczone zostają liczby, które w pewnej jednostce wyrażają zmierzone wielkości. Parametry techniczne wybranych na potrzeby projektu czujników przedstawiono w tabeli 2.