Motor Shield R3 – nie tylko dla Arduino

arduino-log

Tym razem chciałbym wam przedstawić Arduino Motor Shield Rev3  stanowiący nakładkę na Arduino będącą kontrolerem silników, która się idealnie nadaje do sterowania napędem robocików.  Zatem…

Motor Shield Rev3 oryginalny możemy nabyć w w sklepie KAMAMI. Moduł jest typową nakładką shield zgodną z pinologią Arduino , co też umożliwia użycie go z płytkami w tym formacie TinkerKit

  • ARDUINO
  • FRDM-KL25Z
  • FREEBOARD
  • STM32 NUCLEO

tu jednak należy zauważyć iż shield jest dopasowany do napięć arduino i pracuje w zakresie 5V do 12V, Shield jest oparty o układ L298P będący sterownikiem dwóch silników DC lub 1 krokowego. L298P pozwala na maksymalne obciążenie prądowe 2A/kanał  lub 4A maksymalnie pod warunkiem użycia zewnętrznego zasilania silników.

W przypadku używania silników DC  mamy możliwość kontrolowania prędkości i kierunku obrotów każdego z obu silników niezależnie, dodatkowo możemy zmierzyć prąd absorbowany przez każdy z silników (prąd pomiarowy = 1.65V/A) co jest przydatną funkcją w wielu przypadkach.

Tymczasem w paczuszce znajdujemy niewielkie pudełko:

SS105158

w którym znajdujemy jeszcze mniejszą płytkę mocno wciśniętą w kartonik:

SS105159

Po wydobyciu wreszcie możemy podziwiać płytkę w całej okazałości z obu stron:

SS105163SS105164

 

 

 

 

 

 

 

 

Oczywiście warto kupić oryginał choć cenowo nie jest zbyt tani jednak w ten sposób wspieramy Arduino które się może rozwijać dalej i dostarczać ciekawe shieldy. Wracając jednak do naszego opisu. Nie będziemy się tu za wiele rozwodzić gdyż jest dla platformy wiele przykładów użycia tego shielda a wszystko znajdziemy na stronie Producenta. Niemniej warto wspomnieć, że płytka jest  przelotowa co umożliwia zapięcie kolejnego shielda na niej, ponadto posiada szereg złącz umożliwiających podłączenie serv i czujników co widać niżej:

Przechwytywanie

TWI  –  wyprowadzenia magistrali I2C

(piny licząc od góry)

  • SCL
  • SDA
  • +5V
  • GND

PWM – wyjścia cyfrowe PWM do sterowania np, serwami modelarskimi  (D5 i D6)

  • +5V
  • OUT
  • GND

ANALOG  – Wejścia analogowe . np czujników odległości (A2 i A3)

  • +5V
  • IN
  • GND

 

B, A – Wyjścia silników B i A obok których znajdują się też diody LED informujące o stanie wyjść silników.

– Wejście zewnętrznego zasilania zalecane dla silników potrzebujących większego napięcia i prądu.

OD spodu płytki  znajdziemy też kilka zworek , które mają znaczenie:

  • BRAKE A  –  hamowanie silnika A z pinu D8
  • BRAKE B  –  hamowanie silnika B z pinu D9
  • SENS0 –  pomiar prądu silnika A  na pinie A0
  • SENS1 –  pomiar prądu silnika B  na pinie A1
  • Vin Connect  –  zasila płytkę z pinu Vin na płytce Arduino  —  UWAGA !!  gdy zasilamy silniki napięciem od 5 do 12V możemy także zasilać ze złącza V na shieldzie (np pakietem LiPo) płytkę Arduino, przy wyższych napięciach należy ją rozłączyć  !!!!  I tym samym zasilać Arduino i silniki OSOBNO !

Płytka do sterowania silnikami  używa pinów Digital 3, 8, 9, 11, 12, 13  oraz Analog In  0 i 1. (piny D8 i 9 oraz A0 i 1 mogą zostać uwolnione poprzez przecięcie zworek)

Schemat jest do wglądu TUTAJ

A tak się prezentuje na płytkach :

Motor Shield na Arduino MEGA

Motor Shield na Arduino MEGA

Freeboard i 7Dof z KAMAMI

Freeboard i 7Dof z KAMAMI

Przykładowy program testowy dla Arduino :

A tu „robocik” na FRDM-KL25Z i Motor Shield rev3

Miłej zabawy z silnikami DC….