Opis przestrzeni adresowej magistrali CAN

Transkrypt

Opis przestrzeni adresowej magistrali CAN
Opis przestrzeni adresowej magistrali CAN przeznaczonej do obsługi
systemów napędowo-pomiarowych montażu „PI of the sky” (v1.0)
(Roman Wawrzaszek)
1. Skrótowy opis magistrali.
W skład magistrali CAN obsługującej pojedynczy montaż wchodzą (rys.1):
- 2 enkodery absolutne (jeden na każdą z 2 osi)
- 2 kontrolerów silników krokowych TRINAMIC TMC-111 (jeden dla każdego
silnika obsługującego pojedynczą oś)
- 1 CAN I/O Expander
- przejściówka CAN – Ethernet
Za pomocą każdego kontrolera TMC-111 obsługiwane są dodatkowo 2 czujniki
krańcowe. Moduł CAN I/O Expandera (oparty o układ MCP25050) służy za interface dla
sterowania urządzeniami firmware dedykowanych obsłudze trybów DEEP/WIDE montażu
(silnika DC rozchylania kamer, czujników krańcowych rozchylania kamer i in.).
Do koncentratora
(ethernet)
Przedłużenie magistrali
do innych montaży
CAN BUS
CAN/Eth
Czujniki
krańcowe
TMC-111
(oś Ra)
ENKODER
(oś Ra)
TMC-111
(oś Dec)
Silnik
krokowy
Czujniki
krańcowe
Silnik
krokowy
ENKODER
(oś Dec)
CAN I/O
Expander
Kontroler systemu
rozchylania kamer
Czujniki
krańcowe
Rys.1 Schemat magistrali CAN montażu.
Silnik DC
2. Przestrzeń adresowa magistrali CAN
Przyjęto format ramki CAN ze standardowym ID wiadomości (11bit). Cała przestrzeń
adresowa, pozwala na zdefiniowanie 2032 adresów (0x0...0x7F0). Uwzględniając potrzeby
narzucone przez wybrane urządzenia, w przestrzeni adresowej wydzielono 3 rodzaje
obszarów z przeznaczeniem na identyfikatory wiadomości dla 3 typów urządzeń: kontrolerów
TMC−111, sterowników Enkoderów i układów CAN I/O Expanderów. Podział przestrzeni
przedstawia rys.2.
0x000
0x001
...
0x030
0x080
...
0x0FF
Przestrzeń adresowa
enkoderów
Przestrzeń adresowa
sterowników TMC
0x181
...
0x37F
Przestrzeń adresowa
CAN I/O Expanderów
0x400
...
0x580
Przestrzeń adresowa
nie przydzielona
0x581
...
0x67F
0x701
...
0x77F
0x7F0
Rys.2 Wykorzystanie przestrzeni adresowej magistrali CAN.
3. Organizacja przestrzeni adresowej kontrolerów TMC-111
Każdy kontroler TMC-111 do komunikacji przez magistralę CAN wymaga użycia 2 ID:
- 1 ID dla nagłówków wiadomości akceptowanych przez dany kontroler
- 1 ID dla nagłówków wiadomości wysyłanych
Do obsługi tych urządzeń przewidziano 48 adresów (pozwalają one obsłużyć na jednej
magistrali do 12 montaży po 2 osie każdy) z zakresu 0x001 – 0x030, przy czym przyjęto
następującą konwencję:
Tab.1
Nr
montażu
1
2
3
...
12
Oś Ra
odb.
0x001
0x003
0x005
...
0x017
nad.
0x019
0x01B
0x01D
...
0x02F
Oś Dec
odb.
0x002
0x004
0x006
...
0x018
nad.
0x01A
0x01C
0x01E
...
0x030
W przyjętej konwencji, kontroler obsługujący oś rektascensji odbiera wiadomości
opatrzone jednym z 12 adresów nieparzystych odpowiadając wiadomością z adresem o 0x18
większym od odbieranego. Osiom deklinacji odpowiadają adresy parzyste.
Dla i-tego montażu, zestaw adresów jest następujący:
Oś Ra :
adrodb_Ra = 2i-1;
adrnad_Ra = adrodb_Ra + 0x18
Oś Dec:
adrodb_Dec = 2i;
adrnad_Dec = adrodb_Dec + 0x18
4. Organizacja przestrzeni adresowej CAN I/O Expander’ów
Jako adres bazowy do obsługi CAN I/O Expanderów przyjęto adres 0x400. Sposób
tworzenia poszczególnych adresów potrzebnych do komunikacji z expanderem należącym do
konkretnego montażu przedstawia tabela 2:
Tab.2
Nr
montażu Offset
1
2
3
...
12
0x000
0x020
0x040
...
0x160
ID dla poleceń
żądania
informacji
0x408 – 0x40E
0x428 – 0x42E
0x448 – 0x44E
...
0x568 – 0x56E
ID odpowiedzi
na polecenia
żądania inf.
0x400 – 0x406
0x420 – 0x426
0x440 – 0x446
...
0x560 – 0x566
ID polecenia ID potwierdzeń wpisu do
wpisu do
rej., zgłoszenia gotowości
rejestru
i autotransmisji
0x410 – 0x417
0x418 – 0x41A
0x430 – 0x437
0x438 – 0x43A
0x450 – 0x457
0x458 – 0x45A
...
...
0x570 – 0x577
0x578 – 0x57A
Do typowej pracy z Expanderem, wystarczy obsługa 4 ID np. dla montażu 1
(offset=0x000):
- ID dla zapytania o stan portów i przetwarzanych danych: 0x408,
- ID wiadomości zwrotnej z danymi: 0x400,
- ID polecenia ustawienia portów expandera (polecenie wpisania wartości do rejestru):
0x410,
- ID potwierdzenia realizacji wpisu do rejestru: 0x417.
5. Organizacja przestrzeni adresowej Enkoderów
Przestrzeń adresowa enkoderów narzucona została przez wybór urządzenia. Założone
przez producenta adresy jakie należy zastosować do komunikacji przedstawia tabela 3:
Tab.3
Ogólną zasadę tworzenia ID w przypadku enkoderów wyjaśnia podział pól w 11
bitowym polu adresu, w którym 4 najstarsze bity określają funkcję, natomiast 7 młodszych
wskazuje adresata wiadomości (rys.3). Dodatkowo, zmiana trybu pracy wymaga użycia
wiadomości z zerowym ID.
Rys.3 Konstrukcja nagłówka wiadomości związanych z
obsługą enkoderów.

Podobne dokumenty