ROBOT DYDAKTYCZNY ROBOT ARM HOBBY V3 INSTRUKCJE MONTAŻU: Model RA2-HOBBY © AREXX - THE NETHERLANDS V0513 -1-
Spis treści 1. 2. 3. 4. 5. 6. 7. 8. 9. xx. Opis produktu Ramię Robota Wymagane narzędzia Lista części Instrukcje montażu Elementy elektroniczne Instalacja programu Programator i Loader 7.1 RobotLoader 7.2 Podłączenie USB na Windows 7.3 Podłączenie USB na Linux 7.4 Test interfejsu USB 7.5 Otwieranie portu na Linux 7.6 Autotest 7.7 Kalibracja 7.
Impressum ©2007 AREXX Engineering Nervistraat 16 8013 RS Zwolle The Netherlands Tel.: +31 (0) 38 454 2028 Fax.: +31 (0) 38 452 4482 E-Mail: Info@arexx.nl Wszystkie prawa zastrzeżone. Każda reprodukcja lub adaptacja całości lub części podręcznika wymaga pisemnej zgody. Specyfikacja produktu oraz dostarczane treści mogą podlegać zmianom. Treść podręcznika może ulec zmianie bez wcześniejszego uprzedzenia. Darmowe aktualizacje podręcznika można znaleźć na: http://www.arexx.
Symbole W podręczniku użyto następujących symboli: “Uwaga!” Używany, aby ostrzec lub zwrócić uwagę na ważne szczegóły. Zignorowanie ostrzeżeń może skutkować uszkodzeniem robota i/lub jego części oraz może być szkodliwe dla twojego zdrowia lub zdrowia innych osób! “Informacja” Symbol wskazuje użyteczne wskazówki lub informacje uzupełniające. Podążanie za wskazówkami nie jest konieczne, ale może ułatwić pracę. Zalecenia dotyczące bezpieczeństwa - Sprawdź polaryzację baterii i źródła zasilania.
1. OPIS PRODUKTU RAMIĘ ROBOTA Ramię Robota to robot w przystępnej cenie dedykowany hobbistom. Jest doskonałym sposobem na nauczenie się podstaw elektroniki, mechaniki i programowania. Ramię Robota jest sterowane przez mikrokontroler ATMEGA64, który programuje się z poziomu programu Open Source Tools w języku C. Użytkownik w łatwy i szybki sposób może wgrać do mikrokontrolera swój własny program poprzez port USB oraz oprogramowanie Uploadera.
1.3. Co można zrobić z Ramieniem Robota? - Przesłać do robota przykładowy lub nowy program. Sterować ramię za pomocą klawiatury. Sterować i programować Ramię Robota przez program RACS. Rozszerzać Ramię Robota gotowymi do użycia modułami aby robot mógł reagować na środowisko: widzieć, czuć, słyszeć. Tak jak roboty przemysłowe wykonują różne zadania, np. budują samochód, ten robot również może wykonywać dla ciebie pewne prace.
2. WYMAGANE NARZĘDZIA szczypce półokrągłe szczypce tnące boczne zestaw śrubowkrętów śrubowkręt Dołączony klucz płaski Dołączony Wkręt samogwintujący (Parker) Wkręty samogwintujące działają jak wkręty do drewna. Wwiercają się w materiał formując miejsce na gwint wkrętu. Dlatego właśnie ten wkręt ma końcówkę ostrzej zakończoną niż zwykłe wkręty. 2 3 1 Wkręty samogwintujące mają wycięcie na łbie, które ułatwia wwiercanie się w materiał.
3.
Dolna szczęka chwytaka Nadgarstek robota O 1x O 1x Podłoże robota O 1x Połączenie przegubów O 1x Konwerter USB Przewód taśmowy O 1x O 1x Baza ramienia robota Górna szczęka chwytaka Płytka PCB O 1x O 1x Taśma do klawiatury 1,5m O 1x Przewód do serwomotorów O 1x Mały wkręt do serwomotoru M2x6 Wkręt samogwintujący M2.3x8 Duży wkręt do Wkręt serwomotoru samogwintujący M2.3x6 M2.6x6 O 8x O 4x O 10x O-Ring M3 O 3x Śruba M3x6 O 4x Śruba M3x8 O 2x O 8x -9- Wkręt samogwintujący M3.
4. INSTRUKCJE MONTAŻU Montaż dolnej części serwonapędu: Potrzebne będą następujące części: 1x Podłoże ramienia 1x Duży serwomotor 4x Śruba M3x8 4x Nakrętka M3 Śruba M3x8 Duży serwomotor Zamontuj serwonapęd zgodnie z rysunkiem! Podłoże ramienia Nakrętka M3 Montaż orczyka: Potrzebne będą następujące części: Duży wkręt Orczyk Zamontuj orczyk na serwonapędzie zgodnie z powyższym rysunkiem! - 10 - 1x Podłoże z serwonapędem 1x Orczyk 1x Duży wkręt do serwomotoru M2.
Montaż górnej części serwonapędu: Potrzebne będą następujące części: 1x Podłoże 1x Koszyk na duży serwonapęd 4x Mały wkręt do serwomotoru M2x6 Mały wkręt M2x6 Koszuk na duży serwonapęd Zamontuj koszyk na orczyku zgodnie z rysunkiem! Podłoże Montaż koszyka na serwonapęd: Potrzebne będą następujące części: 1x Podłoże z zamontowanym koszykiem na serwonapęd 1x Tarcza dystansowa 1x Śruba M3x8 1x Nakładka zabezpieczająca M3 Śruba M3x8 Tarcza dystansowa Koszyk na serwonapęd Nakrętka zabezpieczająca Podł
Montaż serwonapędu: 1x Podłoże z elementami 1x Duży serwomotor 1x Podkładka dystansowa dla serwomotoru 4x Wkręt samogwintujący M3.5x8 Potrzebne będą następujące części: Podkładka dystansowa dla serwonapędu Wkręt M3.
Montaż orczyka: Potrzebne będą następujące części: 1x Podłoże z elementami 1x Orczyk 1x Duży wkręt do serwomotoru M2.3x6 Zamontuj elemenety zgodnie z rysunkiem! Orczyk Wkręt M2.3x6 Podkładka Montaż połączenia przegubów: 1x Podłoże z elementami 1x Połączenie przegubów 1x Mały wkręt do serwomotoru M2x6 2x Duży wkręt do serwomotoru M2.3x6 Potrzebne będą następujące części: Połączenie przegubów TEST! Czy element okręca się swobodnie o 180 stopni? Wkręt M2.
Montaż dwóch serwomotorów: W ostatnim kroku montażu serwonapędów, potrzebne będą następujące części: Śruba M3 x 8 Tarcza dystansowa O-Ring M3 Podwójny koszyk na serwomotor 1x Podwójny koszyk na serwomotor 2x Tarcza dystansowa 2x Śruba M3 x 8 2x Pierścień M3 2x Nakrętka zabezpieczająca M3 4x Wkręt samogwintujący 2.6x6 1x Przykrywka 3x Wkręt samogwintujący 2.
Montaż podwójnego koszyka: Potrzebne będą następujące części: 1x Podłoże z elementami 1x Podwójny koszyk na serwomotor 2x Mały wkręt do serwomotoru M2x6 2x Duży wkręt do serwomotoru M2.3x6 Wkręt M2x6 TEST! Czy podwójny koszyk obraca się swobodnie o 180 stopni? Wkręt M2.3x6 Podłoże Zamontuj elementy zgodnie z powyższym rysunkiem! Montaż nagdarstka robota: Potrzebne będą następujące części: 1x Mały serwonapęd DGServo 12g 1x Nadgarstek robota 2x Wkręt samogwintujący M2.6x6 Wkręt samogwintujący 2.
Końcowy etap składania nadgarstka: Potrzebne będą następujące części: 1x Nadgarstek z elementami 1x Tarcza na serwonapęd 1x Mały wkręt do serwomotoru M2x6 Tarcza na serwonapęd Wkręt M2x6 Nadgarstek Zamontuj tarczę robota zgodnie z powyższym rysunkiem! - 16 -
Montaż dolnej szczęki chwytaka: Potrzebne będą następujące części: 1x Zmontowany nadgarstek 1x Dolna szczęka chwytaka 2x Mały wkręt do serwomotoru M2x6 Dolna szczęka chwytaka Nadgarstek robota Wkręt M2x6 Zamontuj element zgodnie z powyższym rysunkiem! Montaż serwonapędu w dolnej szczęki chwytaka: Potrzebne będą następujące części: 1x Zmontowany nadgarstek 1x Dolna szczęka chwytaka 1x Tarcza dystansowa 1x Śruba M3x8 1x Pierścień M3 1x Nakrętka zabezpieczająca M3 Nadgarstek Dolna szczęka chwytaka TEST
Montaż serwonapędu chwytaka: Potrzebne będą następujące części: 1x Zmontowany nadgarstek 1x Mały serwonapęd DGServo 12g 2x Wkręt samogwintujący M2.6x6 Zamontuj serwonapęd dokładnie tak jak narysunku! Wkręt samogwintujący M2.
Montaż górnej szczęki chwytaka: 1x Zmontowany nadgarstek 1x Górna szczęka chwytaka 2x Mały wkręt do serwonapędu M2x6 2x Duży wkręt do serwonapędu M2.3x6 Potrzebne będą następujące części: Zamontuj szczękę dokładnie tak jak na rysunku! Wkręt M2.3x6 Nadgarstek Szczęka chwytaka TEST! Czy szczęka obraca się swodobnie? Wkręt M2x6 Końcowy etap montażu: 1x Zmontowany nadgarstek z chwytakiem 1x Zmontowane elementy na podłożu 2x Mały wkręt do serwonapędu M2x6 2x Duży wkręt do serwonapędu 2.
Montaż bazy i płytki PCB: 1x Metalowa baza 4x Śruba dystansowa gruba M3x6 1x Płytka PCB 4x Śruba dystansowa cienka M3x30 Potrzebne będą następujące części: Śruba dystansowa gruba M3x6 Baza Śruba dystansowa cienka M3x30 Płytka PCB WAŻNE! Unikaj bezpośredniego kontaktu z elementami na płytce! Staraj się podnosić ją za brzegi.
Końcowy montaż ramienia robota: 1x Baza z płytką 1x Zmontowane ramię 4x Śruba M3x6 Potrzebne będą następujące części: Śruba M3x6 WAŻNE! Podłącz wszystkie przewody przed przystąpieniem do etapu z rysunku powyżej. Odnieś się do schematów na stronie 25 i 51.
GOTOWE ! - 22 -
5. ELEMENTY ELEKTRONICZNE 5.1. Dane techniczne Ten rozdział zawiera informacje związane z danymi technicznymi robota oraz pewien wstęp do podstawowych zagadnień, które pozwolą ci zaznajomić się z terminologią użytą w tym podręczniku. Większość zagadnień zostanie wyjaśniona w późniejszych rozdziałach. Cechy elementów i dane techniczne ramienia robota: ● Mikrokontroler o dużej mocy Atmel ATMEGA64 (8-Bitowy) ◊ Szybkość 16 MIPS (=16 milionów instrukcji na sekundę) przy częstotliwości zegara równej 16MHz.
5.2. Modyfikacje między PCB wersji RA1 PRO i RA2-HOBBY - Nowy konwerter TI TPS54332 DC/DC, 3500mA. Nowy stabilizator napięcia LDO dla 5-woltowych mikrokontrolerów. Dodatkowe złącze zasilające dla VCC i serwonapędu. 6 przedwzmacniaczy do pomiaru aktualnego prądu w serwonapędach poprzez rezystor bocznikowy. - Przełącznik Reset jest teraz przełącznikiem Start/Stop - aby rozpocząć lub zakończyć pracę programu.
5.3. Główna płytka PCB - najważniejsze elementy Diody LED serwonapędów Zasilanie serwonapędów Serwo 1, 2, 3, 4, 5, 6 SW1/SW2 Przełącznik I/O Sprawdź też stronę 51 aby dowiedzieć się jak podłączyć serwonapędy do PCB! I2C & RP6 X-BUS WIFI LED Zasilania SPI Dodatkowe Wejścia/ wyjścia ISP Podłączenie baterii Boot/ISP Ważne! Moduł Bluetooth APC-220 Start Stop Reset Przetwornik napięcia DC Diody LED 1,2,3,4 Podłączenie klawiatury 5.
5.5. Początek pracy z robotem 1. 2. 3. Sprawdź montaż wszystkich elementów mechanicznych oraz elektronicznych robota i podłącz serwonapędy (str. 25 i 51). Podłącz zasilanie 9 do 14V (nie przekraczać 18 V!!). Włącz robot za pomocą przełącznika On/Off. Żródło napięcia Zasilacz Istnieją dwa sposoby na zasilanie robota. Najprostszym z nich jest podłączenie do gniazdka zasilacza, którego napięcie wyjściowe wynosi 9-14V / 3-4 Amps (stałe - DC). W ten sposób sygnał jest podłączony na wejście regulatora napięcia.
6. INSTALACJA OPROGRAMOWANIA Zajmijmy się instalacją oprogramowania. Prawidłowe zainstalowanie jest bardzo ważne w każdym z następnych rozdziałów. Zaloguj się w systemie jako administrator, ponieważ będziesz potrzebował jego uprawnień! Zaleca się najpierw przeczytać cały rozdział, a później ponownie czytać krok po kroku i wykonywać polecenia.
Jeśli ustawienia bezpieczeństwa twojej przeglądarki internetowej nie pozwalają na bezpośrednią instalację z CD-ROM, musisz skopiować najpierw pliki do katalogu na twoim dysku twardym i rozpocznij instalację z tego miejsca. Aby uzyskać więcej szczegółów przeczytaj stronę w menu płyty. Inny sposób: przejdź do napędu CD poprzez manager plików i zainstaluj programy z płyty. WinAVR - dla systemu Windows Teraz rozpoczniemy instalację programu WinAVR.
Jeśli używasz Windows Vista lub Windows 7, musisz zainstalować najnowszą wersję WinAVR! Powinno również doskonale działać w Windows 2K i XP. Jeśli tak nie jest, spróbuj z jedną ze starszych wersji, które również znajdziesz na CD (zanim zaczniesz nową instalację WinAVR, musisz odinstalować wpierw istniejącą wersję).
Jeśli dana wersja zawiera się w przedziale 3.4.6 - 4.1.0, spróbuj skompilować programy (w następnym rozdziale). Jeśli nie udało się, zainstaluj nowe narzędzia. W dalszej części instalować będziemy najnowszą wersję 4.1.1 (na marzec 2007) wraz z ważnymi łatkami. W przypadku, gdy w package manager nie pojawia się ścieżka avr-gcc, wersja została odinstalowana. Należy jeszcze usunąć istotne pliki binarne: wyszukaj w katalogach all/bin, /usr/bin etc.
Zwróć uwagę na nazwy komend i wypisz je DOKŁADNIE tak, jak napisano dalej! Każdy znak jest ważny i nawet, jeśli niektóre komendy wydają ci się dość dziwne, wszystkie są poprawne i upewnij się, że przy przepisywaniu nie popełniłeś błędu! ( ma być oczywiście zastąpione ścieżką stacji CD-ROM!). Folder na CD: :\Software\avr-gcc\Linux zawiera wszystkie istotne pliki dla avr-gcc, avr-libc oraz binutils.
Skrypt automatycznej instalacji Jeśli raz zrobisz skrypt wykonywalnym za pomocą polecenia chmod, możesz zacząc od razu: > cd ~/Robot Arm > chmod -x avrgcc_build_and_install.sh > ./avrgcc_build_and_install.sh Na pytanie czy chcesz zainstalować w tej konfiguracji odpowiedz wciskając “y”. UWAGA: Kompilacja i instalacja zajmie trochę czasu czasu (zależy on od mocy obliczeniowej twojego systemu - np. około 15 min. przy dwurdzeniowym procesorze 2GHz Core Duo Notebook.
Jeśli nie wiesz co dokładnie poszło źle, zapisz linie komend w pliku oraz skontaktuj się ze wsparciem technicznym. Prosimy, żeby zawrzeć możliwie jak najwięcej informacji na temat niepowodzenia. W ten sposób łatwiej będzie rozwiązać twój problem. GCC dla AVR Kompilator GCC jest “połatany“, skompilowany i zainstalowany trochę jak binutils: > cd ~/Robot Arm> bunzip2 -c gcc-4.1.1.tar.bz2 | tar xf > cd gcc-4.1.1 > patch -p0 < ../gcc-patch-0b-constants.diff > patch -p0 < ../gcc-patch-attribute_alias.
Ważne: at –build=`./config.guess` upewnij się, że nie zapomniałeś o znaku ` (na klawiaturze klawisz z tyldą) a nie zamiast niego zwykły znak apostrofu, ponieważ tak napisana instrukcja nie zadziała. Ustaw ścieżkę Musisz się upewnić, że katalog /usr/local/avr/bin jest zapisany w zmiennej ścieżce, bo inaczej niemożliwym będzie pobranie avrgcc z konsoli albo z plików makefile.
Instalacja ręczna Jeśli wolisz zainstalować kompilator ręcznie lub instalacja za pomocą skryptu nie przebiegła pomyślnie, podążaj na instrukcjami poniżej. Opis powstał na bazie artykułu dostępnego pod linkiem: http://www.nongnu.org/avr-libc/user-manual/install_tools.html Jest on również dostępny na CD w formacie PDF w dokumentacji AVR Libc: :\Software\Documentation\avr-libc-user-manual-1.4.5.
Binutils dla AVR Teraz należy wypakować kod źródłowy binutils i dodać kilka łatek. W naszym przykładzie zakładamy, że skopiowałeś wszystko do katalogu domowego ~/Robot Arm: > > > > > > > > > > cd ~/Robot Arm bunzip2 -c binutils-2.17.tar.bz2 | tar xf cd binutils-2.17 patch -p0 < ../binutils-patch-aa.diff patch -p0 < ../binutils-patch-atmega256x.diff patch -p0 < ../binutils-patch-coff-avr.diff patch -p0 < ../binutils-patch-newdevices.diff patch -p0 < ../binutils-patch-avr-size.
Windows JRE 1.6 dla Windows powinien być w poniższym folderze: :\Software\Java\JRE6\Windows\ Instalacja Java w systemie Windows jest bardzo łatwa. Należy rozpocząć instalację i wykonywać instrukcje na ekranie - i gotowe. Możesz pominąć kolejny akapit. Linux W systemie Linux instalacja nie przysparza dużych problemów, jednak niektóre dystrybucje wymagają odrobiny pracy ręcznej. W folderze: :\Software\Java\JRE6\ znajdziesz JRE 1.6 jak RPM (SuSE, RedHat etc.
Możesz sprawdzić czy Java zainstalowała się poprawnie wpisując komendę “java-version” w oknie konsoli. Wiadomość wyjściowa powinna być przybliżona do poniższej: java version “1.6.0” Java(TM) SE Runtime Environment (build 1.6.0-b105) Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing) Jeśli otrzymana wiadomość całkowicie się nie zgadza, być może zainstalowana została nieodpowiednia wersja lub inna JavaVM została już zainstalowana w twoim systemie.
Opcja wywoływana poprzez -D jest konieczna aby pozwolić JVM na znalezienie wszystkich użytych bibliotek. Windows tego nie wymaga i możesz po prostu rozpocząć wybierając plik .exe. Linux żąda skryptu powłoki systemowej ”RobotLoader. sh“. Może to być konieczne, by skrypt dało się wykonać (chmod -x ./RobotLoader.sh). Po tym możesz rozpocząć w konsoli poprzez “./RobotLoader.sh“. Rozsądnie jest stworzyć skrót na pulpicie lub w menu start, aby uruchamianie Robot Loadera było wygodniejsze.
7. Programator i Loader Do wgrania programu HEX z komputera do robota użyty zostanie konwerter USB i nasz program RobotLoader. Zawarty w zestawie został konwerter USB, który jest elementem pozwalającym na połączenie niezgodnych ze sobą urządzeń. Należy z jednej strony podłączyć go do portu USB w komputerze, a z drugiej strony do portu Prog/UART ramienia robota na płytce PCB. Aktualnie wgrywany do robota program automatycznie usuwa poprzedni program.
7.1. RobotLoader RobotLoader został stworzony, by móc wgrywać nowe programy do ramienia robota i wszystkich innych naszych robotów w bardzo prosty sposób! (pod warunkiem, że bootloader jest kompatybilny). RobotLoader Jeśli napięcie spadnie poniżej < 6.7 V, wyświetla się ostrzeżenie. Wbudowane są pewne dodatkowe funkcje, jak na przykład prosty program terminala. Okno terminala Aby RobotLoader pracował nie musi być zainstalowany. Skopiuj jedynie program do nowego folderu na dysku twardym.
7.2. Podłączenie interfejsu USB – Windows Użytkownicy systemu Linux mogą przejść do kolejnej sekcji! Jest kilka sposobów na zainstalowanie interfejsu USB, lecz najprostszym z nich będzie zainstalować sterownik ZANIM podłączony zostanie sprzęt! CD zawiera program do instalacji drivera. Dla wersji 32 i 64 Bit systemów Windows 7, XP, Vista, Server 2003 i 2000: :\Software\USB_DRIVER\Win2k_XP\CDM_Setup.exe Dla systemów Win98SE/Me, tak łatwy sposób niestety nie istnieje.
W tym przypadku pojawi się dialog (w Windows), aby zainstalować nowy driver. Należy wskazać ścieżkę, w której się driver znajduje. Pod Windows 2k/XP należy najpierw wybrać instalację ręczną. Na CD sterownik znajduje się w katalogu wymienioneym na poprzedniej stronie. Po prostu wprowadź katalog swojej wersji Windows i być może kilku innych plików, których system sam automatycznie nie odnajdzie (wszystkie są wymienione poniżej!).
Jeśli pewnego dnia zechcesz odinstalować sterownik Jeśli nadarzy się taka sytuacja (nie teraz - to tylko wskazówka na przyszłość): Jeśli użyłeś programu instalacyjnego z CD ROM, możesz odinstalować to bezpośrednio poprzez menu Start --> Ustawienia --> Panel sterowania --> Dodaj lub Usuń programy. Na liście programów odszukaj pozycję “FTDI USB Serial Converter Drivers“ – wybierz i kliknij “odinstaluj”. Jeśli sterownik został zainstalowany ręcznie, możesz uruchomić program ““FTUNIN.
7.3. Podłączenie interfejsu USB – Linux Użytkownicy Windows mogą opuścić tę sekcję! System Linux z jądrem 2.4.20 lub wyższy już zawiera wymagany sterownik (przynajmniej dla poprzedniego kompatybilnego modelu chipu FT232BM naszego modelu interfejsu USB, którym jest FT232R). Sprzęt rozpoznawany jest automatycznie i nie musisz robić nic więcej. W przypadku jakichkolwiek problemów, możesz pobrać sterowniki na system Linux (oraz wsparcie i być może nowsze sterowniki) bezpośrednio ze strony FTDI: http://www.
7.4. Test interfejsu USB i uruchamianie RobotLoadera Następnym krokiem jest test wgranego programu poprzez interfejs USB. Podłącz interfejs USB do PC (zawsze najpierw podłącz stronę PC!), a drugim końcem 10-pinowym kablem taśmowym do modułu “PROG/UART”, który z kolei podłącza się do robota. (Robot Arm MUSI BYĆ WYŁĄCZONY!) Taśma jest mechanicznie zabezpieczona przed odwróceniem polaryzacji. Dopóki nie ma wymuszenia, nie ma możliwości na złe podłączenie kabla. Następnie włącz RobotLoadera.
7.5. Otwieranie portu – Linux Linux traktuje szeregowy adaptor USB jako zwykły port com. Instalacja sterownika D2XX z FTDI może nie być taka prosta jak instalacja pod Linuxem, a sterowniki normalnych wirtualnych portów com (VCP) i tak są już zawarte w jądrach systemów Linux. Działa to niemal tak samo jak pod Windowsem.
7.6. AUTOTEST Żółta dioda LED zapala się, gdy ramię robota jest włączone. Dioda statusu LED mignie, gdy wgrany zostanie plik HEX. Jeśli zadziała, możesz uruchomić niewielki program autotestu, aby sprawdzić działanie wszystkich układów robota. W tym celu należy kliknąć guzik “Add” u dołu okna RobotLoadera i wybrać plik RobotArmExamples [MINI], „Example_11_Selftest\RobotArm_Selftest.hex“ w katalogu przykładowych programów.
Należy wybrać z listy plik “RobotArm_Selftest.hex“ i kliknąć na przycisk “Upload!“ (wgraj), który znajdziesz na górze tuż pod paskiem postępu. Teraz program zostanie wgrany do procesora MEGA64 na płytce PCB ramienia robota. Powinno to zająć nie więcej jak kilka sekund (dla programu autotestu max. 5 sekund). Przełącz na zakładkę “Terminal” (na dole okienka)! Inny sposób na wybranie terminala: poprzez opcję “View” w menu.
7.7. Kalibracja Uruchom program do kalibracji, aby skalibrować ramię robota. W tym celu należy kliknąć przycisk “Add” u dołu okna RobotLoadera i wybrać plik RobotArmExamples [MINI], „Example_11_Selftest\RobotArm_Selftest.hex“ w katalogu plików przykładowych. Plik zawiera program autotest w formacie heksadecymalnym. Wybrany plik pojawi się później na liście (jak na zrzucie poniżej). Wybierz C (C - calibrate) w programie do kalibracji, aby zacząć kalibrację.
Pozycja do kalibracji Serwonapęd 1 Zaciski chwytaka Serwonapęd 2 Obrót chwytaka Serwonapęd 3 Zginanie nadgarstka Serwonapęd 4 Zginanie w łokiciu Serwonapęd 5 Zginanie w barku Serwonapęd 6 Podstawa - 51 -
7.8. Test klawiatury W zestawie zawarta jest klawiatura, którą można podłączyć do ramienia robota. Użyć jej można, aby w łatwy sposób zaprezentować działanie robota, a także, aby poćwiczyć sposób sterowania. Klawiatura zawiera 6 przycisków do sterowania i 4 specjalne przyciski do późniejszych rozszerzeń. Aby przetestować ramię robota klawiaturą, należy wgrać odpowiedni plik programu hex do mikroprocesora.
8.0. Oprogramowanie RACS RACS (Robot Arm Control Software) to najprostszy sposób na sterowanie oraz programowanie ramienia robota. Do programowania poprzez RACS wymagane jest użycie programu RobotLoadera oraz adaptora USB. Przed użyciem robota do pamięci Flash procesora należy wgrać program RAC-MINI.hex. Podłącz przewód z USB do komputera i otwórz program Loadera. Powinno pokazać się następujące okno: Fig.
W kroku 3 kliknij przycisk “Upload” (wgraj, załaduj), aby wgrać program. Jeśli chcesz pracować na ramieniu, odłącz RobotLoader w polu “Step 1” klikając przycisk “Close” (zamknij). Jeśli zamkniesz program, połączenie zostanie przerwane automatycznie. Upewnij się, że nie ma połączenia między programem Loadera a ramieniem robota, bo inaczej robot nie może być sterowany z programu RACS. 7.1. Instrukcje dla RACS Ramię robota steruje się łatwo poprzez oprogramowanie RACS.
7.2. RACS - Połączenie 1. Po włączeniu programu do sterowania, powinno się ukazać poniższe okno: Fig. 2 2. W rozwijanym menu wymienione są wszystkie interfejsy szeregowe: Fig. 3 3. Podłącz wejście programatora USB 4. Kliknij przycisk “Update”. Kiedy spojrzysz na menu rozwijane ponownie, zobaczysz dodatkowe interfejsy. Interfejs został zainicjalizowany poprzez podłączenie fizyczne programera USB.
5. Wybierz nowy interfejs Fig. 4 6. Zaznacz pole “Connect” Fig. 5 7. Zaznacz pole “servo power” 8. Fig. 6 Poruszaj suwakami, aby zmienić pozycje serwonapędów. Jeśli podczas nawiązywania połączenia wystąpił błąd, pojawi się poniższy komunikat. Należy nawiązać połączenie ponownie (powtórz kroki 2-6 i spradź interfejs). Fig.
7.3.
7.3.1 RACS – bezprzewodowe Z oprogramowaniem RACS i zestawem AREXX ARX-APC-220, można sterować ramię robota także bezprzewodowo. Poniżej opisane jest krok po kroku jak to działa: - Podłącz programator RP6v2 i APC-220 do PC, dokładnie tak, jak opisano to na płycie. - Podłącz APC do płytki PCB ramienia robota (zobacz na stronie 16). - Załaduj Wireless Racs HEX plik do procesora ramienia robota. Wybierz poprawny port COM w programie RACS.
8.0. PROGRAMOWANIE RAMIENIA ROBOTA Stopniowo dochodzimy do programowania robota. Ustawienie edytora tekstu źródłowego Na początku należy ustawić środowisko do programowania. Tak zwany kod źródłowy dla naszego programu w języku C musi w jakiś sposób znaleźć się w komputerze! W tym celu z pewnością nie użyjemy programów do edycji tekstu takich jak OpenOffice czy Word! Żart ten wynika z tego, że nie dla wszystkich może to być oczywiste. Tekst źródłowy to czysty tekst bez formatowania.
Zobacz na stronie 56 jak otworzyć i skompilować przykładowy projekt! Jeśli otworzyłeś przykładowy projekt, powinien on wyglądać mniej więcej jak na tym zrzucie: Plik “Robot ArmExamples.ppg“ To są grupy projektów dla PN2, w których są wszystkie przykładowe programy oraz Biblioteka Robot Arm są wrzucone w jedną listę projektową (“Projects“).
Otwieranie i kompilowanie przykładowego projektu Teraz należy sprawdzić czy wszystko działa poprawnie i otworzyć przykładowy projekt: Wybierz w menu “File“ opcję “Open Project(s)“. Pojawi się zwykła sekcja dialogowa. Wyszukaj “Robot Arm_Examples [MINI]\“ w folderze, w którym zapisałeś przykładowe programy. Otwórz plik “Robot ArmExamples.ppg“. Jest to grupa projektowa dla PN2, która ładuje wszystkie przykładowe programy, tak jak Biblioteka Robot Arm, na listę programu (“Projects“).
Funkcje wyjaśnimy szczegółowo nieco dalej (istnieje również wersja programu BEZ komentarzy, abyś mógł zauważyć jak krótki tak naprawdę ten program jest. Komentarze dodają objętości kodowi, jednak są niezbędne do zrozumienia kodu. Niezakomentowana wersja jest jednak przydatna do skopiowania jako baza dla twoich własnych programów!). Na początku należy jedynie przetestować odpowiednie działanie kompilatora. W menu Tools na górze powinny się pojawić świeżo zainstalowane elementy menu (zobacz zrzut).
Po aktywowaniu opcji z menu MAKE ALL, powinno wyświetlić się następujące wyjście (poniżej przedstawiona skrócona wersja! Niektóre linie mogą oczywiście wyglądać nieco inaczej): > “make.exe” all -------- begin -------- avr-gcc (WinAVR 20100110) 4.3.3 Copyright (C) 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Linia “Process Exit Code: 0“ na końcu ma największe znaczenie. Oznacza ona, że nie wystąpił żaden błąd kompilacji. Jeśli pojawia się coś innego, kod źródłowy zawiera błąd, na temat którego kompilator zazwyczaj zwraca wiadomość, aby przybliżyć powód jego pochodzenia. Błąd ten musi zostać znaleziony i poprawiony. Zauważ jednak, że komunikat “Process Exit Code: 0“ nie zawsze jest gwarancją na całkowicie bezbłędny program! Kompilator nie znajdzie nieprawidowego procesu myślowego, który zaimplementowałeś, np.
Oznacza to, że przykładowy program powyżej ma jeszcze zapas 60414 bajtów wolnej pamięci. Stosunkowo krótki program o nazwie Example_01_Leds.c ma taki duży rozmiar, bo zawiera bibliotekę Robot ArmBaseLibrary! Więc nie przejmuj się, jest wystarczająco dużo miejsca na twoje programy, a niewielkie programy zazwyczaj nie wymagają dużo miejsca.
W ramach podsumowania Mamy nadzieję, że nasze roboty wprowadziły cię do świata robotów. Tak jak nasi japońscy przyjaciele wierzymy, że roboty staną się następną rewolucją technologiczną tak jak to było z komputerami i telefonią komórkową! I będzie to rewolucja, która przyniesie nowe ekonomiczne możliwości. Niestety w tym polu Japonia, inne szybkorozwijające się kraje Dalekiego Wschodu oraz USA znacznie wyprzedzają Europę.
DODATEK - 67 -
- 68 - D C B 1 MRESET 2 1 Header 3 3 2 1 GND GND C20 0603 100n R10 0603 10K VCC BUTTON START/STOP 2 START/STOP_RESET BEEPER 2 ISP_RESET RESET MRESET D3 MCL4148 R12 0603 100K GND STH Header 2 ISP/BOOT GND 2 1 PIEZO SND 2 1 A 1 GND X1 GND C18 0603 18p 1 3 16.
- 69 - D C B 7 - 18V max. 4A DC JACK PWR1 1 3 2 GND V_IN GND V_IN GND V_IN Header 3 1 2 3 PWR3 Header 2 1 2 PWR2 FUSE_HOLDER F4.0A F1 2 1 1 SW-SPDT 3 GND R2 0603 24.9k R1 0603 100k C6 0603 100nF UBAT GND R3 0603 10k GND R4* 0603 1M C43* 470µF 25V C7 0603 10n C3* 1206 10µF 25V GND C8 0603 470pf R5 0603 24.
- 70 - D C B A 1 MRESET PD6 PD4 PB2/MOSI PB0/SS SCL PC0 PC1 PE1/TXD0/PDO PE0/RXD0/PDI RXD1 1 VCC 13 11 9 7 5 3 1 13 11 9 7 5 3 1 2 4 6 8 10 GND SPI/IO1 VCC GND IO2 VCC 14 12 10 8 6 4 2 14 12 10 8 6 4 2 PROG/UART 1 3 5 7 9 SDA PC3 PC2 EXT_ADC PE2/XCK0/AIN0 2 PE6/INT6 PD7 PD5 PB3/MISO PB1/SCK GND MRESET TXD1 2 GND VCC PE1/TXD0/PDO PB1/SCK ISP_RESET 3 Dual use with Wireless APC220 SET Pin MISO 3 GND 4 MOSI Header 3 1 2 3 Header 3 SPWR SERVO_POWER GND PE0/RXD0/PDI 1
- 71 - A B C D PA6 PA4 1 1 1N4148 D10 1N4148 SERVO5_DWN PA1 1N4148 D12 1N4148 D11 PA0 D9 SSERVO5_UP 1N4148 1N4148 PA1 D3 D4 PA0 D2 SERVO1_DWN SSERVO1_UP 1N4148 D1 1N4148 2 2 PA7 PA6 PA5 PA4 SERVO6_DWN SSERVO6_UP SERVO2_DWN SSERVO2_UP PA3 PA2 PA3 PA2 2 4 6 8 ext key pad 1 3 5 7 J1 PA3 PA2 PA1 PA0 PA7 PA5 D5 1N4148 D14 1N4148 D13 1N4148 D6 1N4148 3 3 Date: File: A4 Size Title TANK_BCK TANK_FNT SERVO3_DWN SSERVO3_UP PA1 PA0 PA1 PA0 D8 1N414
E.