Aktualnie oferta modułów - nakładek dla płytek oferowanych przez TI nie jest zbyt obszerna, ale stale rośnie. Pomimo tego nakładki umożliwiają tworzenie różnorodnych aplikacji wykorzystujących procesory MSP. W artykule opisuję własne projekty nakładek, których funkcjonalność jest ukierunkowana do zastosowania w małej robotyce, ponieważ po połączeniu z launch padem umożliwiają utworzenie taniej, wydajnej platformy dla niewielkiego robota mobilnego, wspieranej przez moc 16-bitowego mikrokontrolera o niewielkim zapotrzebowaniu na moc zasilania. Jest to nie bez znaczenia przy zasilaniu robota z baterii.
Dla ułatwienia w tabeli 1 umieszczono opis rozmieszczenia pinów launchpada V1.5 wraz z nazwą pełnionej funkcji.
Schemat proponowanego rozwiązania booster packa pokazano na rysunku 1. Jak wspomniano, wszystkie piny wyprowadzone są wraz z sygnałem masy i VCC na złącza P10...P27. Ułatwia to dołączenie czujników wymagających zasilania. Należy pamiętać, że mikrokontrolery stosowane na płytkach launchpad wymagają sygnałów o napięciu 3,3 V. W wypadku współpracy z układami zasilanymi z 5 V jest konieczne zastosowanie odpowiednich układów interfejsowych.
Na zwarte nóżki 3 i 4 złącza RST jest doprowadzony sygnał RESET. Ułatwia to jego dystrybucję w gotowej aplikacji. Do złącza E1 doprowadzono napięcie zasilające. Do złącz I²C, UART doprowadzone są sygnały interfejsów komunikacji szeregowej. Rozmieszczenie sygnałów jest zgodne z Arduino, co umożliwia łatwe podłączenie np. opisywanych w EP ekspanderów I²C, modułów Xbee, Bluetooth zgodnych ze standardem poziomów logicznych CMOS 3,3 V.
W razie potrzeby użycia wszystkich 8 bitów portu wyprowadzenie ich na złącza P1_0...P2_7 nie jest zbyt wygodne, więc cały port i zasilanie wyprowadzono na złącza EP1 i EP2 typu IDC10 w standardzie STK500. Ze względu na alternatywne wyprowadzenie obwodu oscylatora na P2_7/6 istnieje możliwość odłączenia ich od EP1, EP2 poprzez wyciągnięcie odpowiedniej zwory X26/X27/P2_6/7.
Do złącza IRC doprowadzono sygnały z odbiornika podczerwieni IR. Kondensator CI i dławik FBI zapewniają filtrowanie zasilania. Połączenia z wybranym portem LP dokonujemy za pomocą typowej taśmy przewodów. Zastosowano to rozwiązanie ze względu na możliwość wyłączenia zasilania nieużywanego odbiornika IR oraz na elastyczność sposobu realizacji obioru podczerwieni. Do złącza RVC jest dołączony potencjometr nastawny RV służący do zadawaniu wartości analogowej. Sposób jego dołączenia jest identyczny jak odbiornika podczerwieni.
Niestety, mikrokontrolerów G2 nie wyposażono w pamięć nielotną. Szkoda, ponieważ praktycznie zawsze jest potrzebna możliwość zapamiętania konfiguracji, danych itp. w pamięci nielotnej. Aby "dotrzymać kroku" architekturze G2 pod względem poboru energii, warto zastosować pamięć FRAM pobierającą praktycznie ułamek mocy typowej pamięci EEPROM. Dodatkowo, "gratis" dostajemy najlepsza cechę tego typu pamięci, czyli jednakowy czas cyklu zapisu i odczytu oraz praktycznie nieograniczoną ich liczbę. FRAM ma tylko jeden poważny minus - cenę przechowanego bajta, lecz w naszym zastosowaniu nie jest to specjalnie dotkliwe. Ze względu na zgodność wyprowadzeń FRAM z EEPROM, można stosować je zamiennie. Obwód uzupełniają rezystory podciągające R3 i R4 oraz zwory ZF, SDA, SCL umożliwiające odłączenie nieużywanej pamięci od układu.
Do złącz SRV1/SRV2 doprowadzono sygnały z buforów QS1 i Q2 typu otwarty dren. Tranzystory są zabezpieczone przed przepięciami za pomocą diod DS1 i DS2, co umożliwia sterowanie obciążeń indukcyjnych. Rezystory RS1 i RS2 polaryzują wejścia bramek. Wejściowe sygnały sterujące doprowadzono do złącz SR1 i SR2. Wyjścia buforów są doprowadzone do złącz EH zgodnych z Arduino. Mają one doprowadzony sygnał zasilania zewnętrznego VIN, co umożliwia bezpośrednie sterowanie diodami LED, elektromagnesami, serwomechanizmami itp., bez konieczności stosowania dodatkowych przewodów.
Nakładka ma zamontowany specjalizowany układ DRV8833 (UM) służący do sterowania silnikami prądu stałego. Układ ma wbudowane dwa mostki H z zabezpieczeniami oraz umożliwia dwukierunkowe sterowanie, także za pomocą PWM, dwóch silników o średnim prądzie 1.5 A. Schemat blokowy układu pokazano na rysunku 2. Próg zabezpieczenia nadprądowego jest ustalony poprzez rezystory RM1 i RM2 na 1 A. Wartość rezystorów wyznacza się z wzoru Is=0,2 V/RMx. Wejście nSLEEP=0 doprowadzone do złącza SLP wprowadza układ w stan ograniczenia poboru prądu, wyłączając mostki i wewnętrzną logikę. Wyjście nFAULT typu otwarty dren informuje o stanie awaryjnym układu. Wejścia sterujące AIN1 oraz AIN2, doprowadzone do złącz M11 i M12, sterują pracą mostka zgodnie z tabelą 2.
Układ umożliwia sterowanie za pomocą PWM poprzez doprowadzenie sygnału modulowanego do jednego z wejść INx. W zależności od stanu drugiego wyjścia jest możliwy wybór trybu hamowania: dla poziomu 0 wybieg, dla 1 hamowanie. Szczegółowe informacje dostępne są w dokumentacji układu DRV8833.
Zewnętrzne zasilanie nakładki poprzez złącze BAT (4,5...10 VDC) zapewnia układ U1 stabilizatora LDO 3,3 V. Dioda świecąca LD sygnalizuje obecność napięcia 3,3 V. Część "mocy" wymaga zasilania zewnętrznego (potencjał VIN) ze względu na ograniczoną wydajność stabilizatora U1 lub LaunchPada. W zależności od położenia zwór VCC/VE/V33 jest możliwy wybór źródła zasilania nakładki:
- zwora VCC+V33: zasilanie sensorów z LP (należy pamiętać o niewielkim prądzie obciążenia, rzędu kilkudziesięciu mA; niedostępne są zasilania dla UM, QS1 i QS2, nie jest wymagane źródło zewnętrzne),
- źródło zewnętrzne, zwora VCC+VE zasilanie sensorów ze źródła zewnętrznego, dostępne wszystkie peryferia, launchpad zasilany z USB, normalny stan podczas programowania z Energii,
- źródło zewnętrzne zwory VCC+V33 oraz VCC+VE, praca autonomiczna, Launchpad zasilany ze źródła zewnętrznego (nie podłączać USB, wyjąć zworę VCC launchpada, aby programator nie pobierał niepotrzebnie prądu).
Złącze MSPJ6 dubluje pin VCC/GND Launchpada, jego montaż nie jest konieczny dla poprawnej pracy.
Wykaz elementówRezystory: Kondensatory: Półprzewodniki: Inne: |
Montaż
Moduł zmontowano na dwustronnej płytce drukowanej. Jej schemat montażowy pokazano na rysunku 3. Montaż jest typowy, nie wymaga dokładnego opisu. Należy jedynie pamiętać o przylutowaniu pada termicznego układu sterownika silników DRV8833.
Adam Tatuś, EP
Dodatkowe materiały znajdziesz na FTP
user: 32858, pass: 4285avne