Bogusław Rymut
|
|
- Mateusz Pietrzak
- 9 lat temu
- Przeglądów:
Transkrypt
1 POLITECHNIKA RZESZOWSKA Roboty Mobilne Sterowanie robotem Pioneer Bogusław Rymut
2 1 Spis treści 2 Przygotowanie do laboratorium Cel laboratorium Robot mobilny PIONEER AT-DX Silniki Akwizycja danych Sonary Akwizycja danych z zderzaków Awaryjne zatrzymanie robota Zagadnienia laboratoryjne Regulator Automat skończony Tworzenie i testowanie aplikacji dla robota Pioneer Testowanie kodu na robocie Tworzenie nowej aplikacji Testowanie aplikacji Symulator robota Przykłady Sterowanie bezpośrednie Sterowanie pośrednie przy wykorzystaniu akcji Zadania do wykonania Dodatki Wymagane oprogramowanie Literatura
3 2 Przygotowanie do laboratorium Instrukcja obejmuje dwa spotkania laboratoryjne. Od studentów wymaga się wcześniejszego przygotowania do laboratorium z zagadnień wymienionych w instrukcji. Pierwsze laboratorium wymaga od studentów znajomości następujących zagadnień: Podstawy programowania w języku C++ : o Znajomość instrukcji if, switch. o Znajomość pętli for, while. o Znajomość obiektowych typów danych Znajomości podstawowych funkcji i cech środowiska ARIA i robota Pioneer Drugie laboratorium wymaga od studentów znajomości dodatkowych zagadnień: Podstawowej wiedzy o zagadnieniach regulacji: o Regulator PID, PI, PD Znajomość projektowania i tworzenia automatów skończonych. Ponadto studenci powinni wykazywać się znajomością języka angielskiego w stopniu umożliwiającym prace z dokumentacją techniczną. 3 Cel laboratorium Celem laboratorium jest zapoznanie studentów z robotem mobilnym Pioneer, jego konfiguracją w środowisku laboratoryjnym oraz poznanie podstaw środowiska programistycznego ARIA, które umożliwia sterowanie klasą robotów mobilnych Pioneer. Środowisko to składa się z symulatora robota i biblioteki programistycznej dla języka C oraz C++. W trakcie laboratoriów studenci zapoznają się ze środowiskiem symulacyjnym robota, tworzeniem map dla tego środowiska oraz poznają podstawy programowania z wykorzystaniem biblioteki programistycznej ARIA. Poznane fragmenty biblioteki obejmą metody sterowania silnikami robota i akwizycję danych z sensorów robota tzn. sonarów oraz zderzaków. Studenci na zajęciach zapoznani zostaną z metodami regulacji, w szczególności regulatorem PID. Ponadto poznają metody sterowania robota przy wykorzystaniu automatów skończonych. Laboratorium realizowane będzie w postaci zadań praktycznych obejmujących sterowanie robotem, podążanie za obiektem, itp. Część uwagi poświęcona zostanie również systemom lokalizacji i nawigacji robota mobilnego Pioneer. Cykl laboratoriów składa się z następujących tematów: Zapoznanie się z środowiskiem Aria. Akwizycja danych pomiarowych z sensorów zamontowanych na robocie mobilnym. Sterowanie robotem w środowisku laboratoryjnym. Wykorzystanie zadnień regulacji dla sterowania silnikami robota mobilnego. Sterowanie robota przy wykorzystanie automatu skończonego. 3
4 4 Robot mobilny PIONEER AT-DX3 Robot mobilny Pioneer AT-DX3 wyposażony jest w silniki elektryczne oraz kilka sensorów, które umożliwiają interaktywne sterowanie robota oraz jego interakcje z otoczeniem (m.in. omijanie przeszkód). 4.1 Silniki Robot mobilny wyposażony jest w dwa silniki elektryczne, które pracują niezależnie dzięki temu możliwe jest jazda robota po zadanej trajektorii jak również obrót robota wokół własnej osi. Robotem mobilnym pionier można sterować na dwa sposoby, pierwszym z nich jest tryb bezpośredni, w którym robot wykonuje przekazywane zadanie natychmiast. Drugi sposób sterowania robotem nazywany jest trybem pośrednim, w tym trybie robot realizuje zadania w odpowiedzi na występujące zdarzenie, lub występujące czynniki zewnętrzne. W celu bezpośredniego sterowania robotem wykorzystywane są miedzy innymi następujące metody klasy ArRobot: void ArRobot::setRotVel(double velocity); void ArRobot::setVel2(double leftvelocity, double rightvelocity); void ArRobot::setVel(double velocity); void ArRobot::move(double distance); void ArRobot::moveTo(ArPose pose, bool documulative = true ); bool ArRobot::isMoveDone(double delta = 0.0 ); bool ArRobot::isTryingToMove (void); void ArRobot::forceTryingToMove(void); void ArRobot::setHeading(double heading); bool ArRobot::isHeadingDone(double delta = 0.0) const; void ArRobot::setDeltaHeading(double deltaheading); 4.2 Akwizycja danych Robot Pionner wyposażony jest w serie sensorów umożliwiających interakcje z otoczeniem i nawigację w środowisku miejskim, przestrzeni otwartej lub zamkniętej. Robot fabrycznie wyposażony jest w dwa typy czujników tzn. sonar oraz zderzaki. Konstrukcja robota umożliwia podpięcie praktycznie dowolnych dodatkowych sensorów, które zwiększają możliwości robota. Warto wspomnieć że maksymalne obciążenie robota wynosi 40 kilogramów, przez co możliwe jest podpięcie jednocześnie wielu zaawansowanych sensorów i urządzeń dodatkowych Sonary Podstawowym sensorem, w który wyposażony jest praktycznie każdy robot z serii pionier są sonary. Sonar jest urządzeniem wykorzystującym fale dźwiękowe (długie, średnie lub krótkie) do określenia pozycji obiektów. Sonar z racji swojej konstrukcji jest w stanie wykryć obiekt jedynie w małym polu widzenia. Z tego powodu na robocie mobilnym zamontowana została seria sonarów, dzięki której możliwa jest detekcja obiektów w szerokim polu widzenia. Pobieranie danych z sonarów robota mobilnego w odbywa się przy wykorzystaniu następujących metod klasy ArRobot: 4
5 int ArRobot::getNumSonar (void) const int ArRobot::getSonarRange (int num) const; ArSensorReading* ArRobot::getSonarReading(int num) const; Metoda ArRobot::getNumSonar zwraca ilość dostępnych sonarów. Metoda ArRobot::getSonarRange zwraca odległość do najbliższego obiektu z zadanego sonaru. Natomiast metoda ArRobot::getSonarReading zwraca obiekt klasy ArSonarReading. Obiekt ten umożliwia pobranie dodatkowych parametrów takich jak pozycja sonaru na robocie itp.. Obiekt zwracany przez tą metodę nie powinien być usuwany przez użytkownika ani tez zapisywany. Rys. 1 Konfiguracja sonarów robota mobilnego Akwizycja danych z zderzaków Zderzaki spełniają role sensora odległości w przypadku, gdy pozostałe metody detekcji przeszkody zawiodły. Robot posiada dwie grupy zawierające po piec zderzaków, grupy te umieszczone są z przodu i z tylu robota mobilnego. Detekcję kolizji z którymś z boków robota mobilnego realizuje się przez sprawdzenie czy dany silnik nie jest zakleszczony (ang. Stall) tzn. pomimo ustalonej prędkości koła nie wykonują ruchu obrotowego. 5
6 Rys. 2 Konfiguracja zderzaków robota mobilnego Pobieranie danych ze zderzaków robota mobilnego może odbywać się przy wykorzystaniu następujących metod: bool hasrearbumpers (void) const int ArRobot::getStallValue (void) const; int ArRobot::getNumFrontBumpers (void) const; int ArRobot::getNumRearBumpers (void) const; bool ArRobot::isLeftMotorStalled (void) const; bool ArRobot::isRightMotorStalled (void) const; Metody ArRobot::hasFrontBumpers oraz ArRobot::hasRearBumpers służą do sprawdzenia obecności zderzaków z przodu i z tyłu robota. Funkcjonalność tych metod może nie być dostępna na wszystkich modelach robotów, uniwersalnym rozwiązaniem jest sprawdzanie ilości dostępnych zderzaków metodą ArRobot::getNumFrontBumpers oraz ArRobot::getNumRearBumpers. Bit Wartość Numer Tylniego zderzaka Lewe Numer przedniego zderzaka Prawe Znaczenie kolo koło Tab. 1 Znaczenie bitów wartości ArRobot::getStallValue Sprawdzenie stanu zderzaków odbywa się przez sprawdzenia stanu poszczególnych bitów zwracanych liczby całkowitej zwracanej przez metodę ArRobot::getStallValue (zob. Tab. 1). 4.3 Awaryjne zatrzymanie robota W przypadku, gdy program sterujący utracił kontrolę nad robotem lub zderzył się on z przeszkodą bezzwłocznie należy zatrzymać pracę silników robota. Zatrzymanie silników może odbyć się z poziomu programowano jednak w opisanym wcześniej przypadku należy bezzwłocznie włączyć 6
7 przycisk STOP znajdujący się na tylniej części pokładu robota. Aktywowanie przycisku STOP sygnalizowane będzie przez sygnał dźwiękowy, gdy przycisk jest aktywowany wszystkie instrukcje programu sterującego będą ignorowane przez robota mobilnego. 5 Zagadnienia laboratoryjne 5.1 Regulator Regulator jest urządzeniem, którego zadaniem jest sterowanie procesem. W układach z ujemnym sprzężeniem zwrotnym regulator wyznacza zadaną wartość wielkości sterującej na podstawie uchybu regulacji, czyli różnicy pomiędzy wartością zmierzoną a zadaną wartością tej wielkości. Sygnał wyjściowy z regulatora oznaczany jest zazwyczaj, jako u(t), natomiast wejściem do regulatora jest wykonawczy sygnał uchybu e(t). Najbardziej znanym regulatorem używanym w praktyce jest regulator PID, w którym w nazwie znajdują się litery pochodzące od rodzajów sterowania, jakie on w sobie zawiera: proporcjonalne P (ang. proporcjonal), całkujące I (ang. Integral), różniczkujące D (ang. Derivative). Wartość sygnału wyjściowego w regulatorze PID wyznacza się zgodnie z wzorem: g i d 0 t de t u t P et P et P (1.1) dt Stosowane są również wersje uproszczone regulatora PID składające się z wybranych elementów składowych tego: I, P, PI, PD. Wartość sygnału wyjściowego regulatora I wyznacza się zgodnie z wzorem: u t t i 0 P e t dt (1.2) Wartość sygnału wyjściowego regulatora P wyznacza się zgodnie z wzorem: u t g P e t (1.3) Wartość sygnału wyjściowego regulatora PI wyznacza się zgodnie z wzorem: 7 g t u t P e t P e t dt (1.4) Wartość sygnału wyjściowego regulatora PD wyznacza się zgodnie z wzorem: i 0 de t (1.5) u t Pge t Pd dt
8 5.2 Automat skończony Automat skończony (ang. finite state machine, FSM) abstrakcyjny, matematyczny, iteracyjny model zachowania systemu dynamicznego oparty na tablicy dyskretnych przejść między jego kolejnymi stanami (diagram stanów). Automaty skończone idealnie nadają się do sterowania prostymi zadaniami robotyki. Robot ma poruszać się tak, aby jego ruch nakreślił kształt kwadratu długości 50 cm. W tym szczególnym przypadku wyróżniać będziemy dwa stany: S1 robot porusza się po linii S2 robot obraca się o 90 stopni w prawą stronę Zmiana stanu z stanu S1 na stan S2 będzie następowało, gdy robot przejedzie odcinek 50 cm. Natomiast przejście pomiędzy stanem S2 a S1 następować będzie, gdy robot zakończy proces obrotu. Schemat tego automatu zaprezentowany został na poniższym rysunku. 8 Rys. 3 Automat skończony Automatu skończony implementuje się zazwyczaj wykorzystując pętlę while oraz instrukcje switch: int stan = 1; while (true) switch (stan) case 1: jedź_do_przodu; if ( jeśli_przejechał_daną_odległość == 50_cm ) stan = 2; break; case 2: Wykonuj_obrót; if ( kąt_obrotu == 90_deg ) stan = 1;
9 break; 6 Tworzenie i testowanie aplikacji dla robota Pioneer 6.1 Testowanie kodu na robocie Sterowanie robotem odbywa się przy wykorzystaniu złącza transmisyjnego RS232, podłączonego do komputera pokładowego lub do komputera osobistego przez wykorzystanie odpowiednio długiego przewodu sterującego łączącego robota z jednostką centralna. Alternatywnym rozwiązaniem jest wykorzystanie urządzenia Lantronix WiBox umożliwiającego przesyłanie danych do portu sterującego przez sieć komputerową lub przez sieć bezprzewodową. Konfiguracja stanowiska laboratoryjnego składa się z następujących elementów: Robota mobilnego Pionner 3-AT, Urządzenia Lantronix WiBox, Rutera bezprzewodowego TP Link, tworzącego otwarty punkt dostępowy Pioneer służącego do przyłączenia robota do lokalnej sieci Ethernet, Komputera przyłączonego do lokalnej sieci komputerowej lub przyłączonego do punktu dostępowego Pioneer wraz z pakietem oprogramowania ARIA. Po uruchomieniu punktu dostępowego do sieci Ethernet, oraz uruchomienia robota należy sprawdzić, pod jakim adresem w lokalnej sieci widoczny jest ruter. Adres rutera jest wykorzystywany w celu połączenia się z robotem w trakcie laboratorium, adres nie jest stały i może się on zmieniać pomiędzy kolejnymi ćwiczeniami laboratoriami. Rys. 4 Budowa sieci wykorzystywanej do polaczenia się z robotem. 9
10 Adres IP pod, którym widoczny jest ruter może pobrać na dwa sposoby. Pierwszym z nich jest fizycznie podpięcie komputera do portu sieciowego 1, 2, 3, lub 4 ruter bezprzewodowego lub podłączenie się z punktem dostępowym Pioneer. Komputerowi podłączonemu do rutera zostanie automatycznie przydzielony adres IP z puli adresów z przedziału <2-255>. W celu sprawdzenia adresu zewnętrznego rutera należy z poziomu przeglądarki internetowej przejść pod adres który daje dostęp do panelu administracyjnego rutera. W przypadku prośby o autoryzację dostępu należy podać następujący login admin, admin. Sprawdzenie zewnętrznego adresu IP, pod którym dostępny jest ruter odbywa się przez wybranie zakładki Network/WLAN, zewnętrzny adres rutera będzie widoczny jest w polu IP Address. 10 Rys. 5 Sprawdzanie adresu zewnętrznego rutera bezprzewodowego Z poziomu panelu administracyjnego możliwa jest także weryfikacja podłączenia robota mobilnego do punktu dostępowego. W tym celu należy wybrać z menu element DHCP/DHCP Client List. Jeśli na liście widoczny jest klient o adresie IP oznacza to, że robot połączył się z punktem dostępowym. Jeśli adres ten nie jest widoczny należy zweryfikować czy urządzenia WBox jest poprawnie podłączony z robotem mobilnym i dokonać restartu robota. Jeśli pomimo widoczności adresu na liście klientów połączenie z robotem nie może zostać ustalone należy sprawdzić konfigurację WiBox a. W tym celu będąc połączonym do rutera bezprzewodowego należy z poziomu przeglądarki internetowej wejść na adres i autoryzować się pustym loginem i pustym hasłem w celu konfiguracji urządzenia WiBox. Opisana powyżej metoda powinna być wykorzystywana jedynie w szczególnych przypadkach, tzn. w przypadku problemów z polaczeniem się z robotem mobilnym, lub brakiem dostępu do sieci laboratoryjnej. Drugie podejście wymaga uruchomienia darmowego narzędzia FastResolver. Program umożliwia pobranie adresów fizycznych wszystkich komputerów podłączonych do lokalnej sieci komputerowej. Po uruchomieniu aplikacji użytkownik powitany zostanie oknem dialogowym Select Hosts / IP Adresses (rys. 8). W tym oknie należy wybrać opcję Retrieve MAC Adresses, powoduje ona że
11 aplikacja będzie pobierała adresy fizyczne kart sieciowych urządzeń przyłączonych do sieci komputerowej. W polach Resolve IP Addresses range należy wpisać przedział adresów sieci laboratoryjnej np. From: , To: Wartość przedziału może się zmieniać w zależności od laboratorium z tego powodu zaleca się wcześniejsze zweryfikowanie puli adresów sieci przez wyświetlenie właściwości połączenia sieciowego ( rys. 4 ). Rys. 6 Właściwości połączenia sieciowego Adres IP widoczny będzie w polu IPv4 Address. Zakres sieci lokalnej w znaczącej ilości przypadków zakres który należy podać w polach From, To będzie składał się z trzech pierwszych cyfr adresu IP natomiast ostatnia składowa będzie w przedziale od 0 do 255. Po wprowadzeniu prawidłowego zakresu adresów sieciowych należy wybrać przycisk Ok, który uruchomi proces skanowania sieci. Będzie on trwać kilka sekund, użytkownik zostanie poinformowany o zakończenia procesu skanowania przez dezaktywacja przycisku stop oraz pojawienie się przy każdym z adresów z puli zielonego lub czerwonego okręgu informującego o dostępności adresu w sieci komputerowej. Rys. 7 Okno startowe narzędzia FastResolver 11
12 Rys. 8 Rezultat skanowania sieci lokalnej 12 Rys. 9 Właściwości urządzenia Po zakończeniu procesu skanowania należy na liście wyników znaleźć urządzenie którego adres fizyczny (adres MAC) ma wartość F8-D F. Wyszukiwanie to może być realizowane przez przeglądanie dostępnych wyników, lub przez wykorzystanie funkcji wyszukiwania, którą można uruchomić przez aktywację menu Edit/Find lub przez wybranie klawiszowego Ctrl-f. Adres urządzenia IP o wskazanym adresie fizycznym służyć będzie do komunikacji programów z robotem mobilnym. Adres IP może zostać skopiowany po wybraniu właściwości znalezionego urządzenia sieciowego i zaznaczenie wartości pola IP Address. Wszystkie programy napisane z wykorzystaniem biblioteki Aria maja możliwość przesyłania instrukcji sterujących poprzez siec lub bezpośrednio przez port RS. W przypadku, gdy robot nie jest podpięty do danego stanowiska biblioteka spróbuje automatycznie połączyć się do symulatora przez siec. W celu specyfikacji adresu, z jakim biblioteka będzie się łączyła należy przekazać w parametrach uruchomienia argumenty -rh XXX, gdzie XXX jest adresem sieciowym robota lub rutera, do którego podłączony jest robot. 6.2 Tworzenie nowej aplikacji Utworzenie nowego projektu wykorzystującego bibliotekę Aria odbywa się przez utworzenie nowego projektu Win32 Console Application. Przy tworzeniu projektu należy odznaczyć opcję Precompiled header i zaznaczyć opcję Empty Project. Wykorzystanie biblioteki ARIA w środowisku programistycznym sprowadza się do dodania ścieżek do plików nagłówkowych i bibliotek w projekcie, oba zadania można wykonać przez zmianę w
13 właściwościach projektu. Dodawanie katalogów zawierających pliki nagłówkowe odbywa się w elemencie Configuration Properties / C/C++ / General modyfikując wartość Additional Include Directories przez dodanie ścieżki C:/Program Files/MobileRobots/Aria/include. Ścieżkę do bibliotek modyfikuje się w elemencie Configuration Properties/Linker/General modyfikując pole Additional Library Directories przez dodanie wartości C:/Program Files/MobileRobots/Aria/lib. Dodanie bibliotek odbywa się w elemencie Configuration Properties/Linker/Input. Biblioteki dodaje się do wartości pola Additional Dependencies, należy tutaj dodać biblioteki AriaVC10.lib I AriaDebugVC10.lib w zależności od wybranej konfiguracji. Jednym z (uruchomienie Aria.lib w trybie DEBUG) objawów wykorzystania błędnej biblioteki jest krytyczny błąd aplikacji podczas wywołania metody ArRobot::lock(). Należy także w elemencie Configuration Properties -> Debugging wprowadzić wartość Environment wartość PATH=%PATH%;C:\Program Files\MobileRobots\Aria\bin. 6.3 Testowanie aplikacji Posiadając uzyskany adres IP rutera bezprzewodowego należy przetestować komunikacje z robotem mobilnym w tym celu należy uruchomić przygotowany program z stosownymi parametrami. W tym celu należy wybrać właściwości projektu i wybrać z listy Configuration element All configurations. Następnie rozwinąć drzewo Configuration Properties i wybrać element Debugging i w polu Command argument wprowadzić wartość -rh XXX.XXX.XXX.XXX gdzie XXX.XXX.XXX.XXX oznacza adres rutera bezprzewodowego lub robota. Rys. 10 Konfiguracja uruchomienia aplikacji 13
14 6.4 Symulator robota Pakiet narzędziowy Aria wyposażony jest w symulator robota mobilnego MobileSim. Symulator ten z powodzeniem symuluje zachowanie robota w statycznym środowisku laboratoryjnym. Jednak środowisko to nie symuluje zderzaków robota, ani innych sensorów za wyjątkiem sonarów. Częstą sytuacją jest także błędne zachowanie robota w symulatorze. Rys. 11 Uruchomienie symulatora MobileSim Symulator dostarcza dwie wbudowane mapy pomieszczeń: AMROffice.map i Columbia.map. Dodatkowa aplikacja Mapper3 umożliwia samodzielne tworzenie map, dla które mogą zostać wykorzystane przez symulator. 14 Rys. 12 Mapper3 W celu utworzenia nowej mapy należy z menu File wybrać element New. Tworzenie mapy odbywa się przez rysowanie elementów w postaci linii lub prostokątów, które służą do określenia przeszkód dla robota. W celu narysowania linii należy wybrać ikonę Forbidden Line i kursorem myszy zaznaczyć
15 miejsce, w którym ma znajdować się dana przeszkoda. W analogiczny sposób tworzy się prostokątne przeszkody wybierając ikonę Forbidden Area. Przeszkody na mapie można tworzyć także przez wykorzystanie narzędzia Line. Opcjonalnie możliwe jest także umieszczenie punktu startowego robota przez wybranie elementu Dock Point. Usuwanie elementów odbywa się przez wybranie elementu wykorzystując narzędzia Select i wciśnięcie przycisku Del. Innymi tworzonymi elementami są linie symbolizujące przeszkody na scenie. Do usunięcia linii z mapy wykorzystywanie jest narzędzie Erese. Uwaga symulator robota nie jest w stanie precyzyjnie odwzorować zachowania prawdziwego robota, ponadto w niektórych sytuacjach bezpośredniego sterowania robotem symulator może dawać wręcz błędne wyniki z tego powodu zaleca się testowanie programów na robocie. 7 Przykłady Przedstawione poniżej przykłady prezentują metodę inicjalizacji robota, w trybie sterowania bezpośredniego i pośredniego. Biblioteka Aria posiada bardzo dobra dokumentacje oraz zbiór przykładów, który w doskonały sposób prezentują wykorzystanie biblioteki, z tego powodu w tym punkcji przedstawione zostaną trzy najprostsze przykłady wykorzystania biblioteki Aria do sterowania robotem. 7.1 Sterowanie bezpośrednie Szablon sterowania robotem mobilnym przy wykorzystaniu automatów skończonych lub przy wykorzystaniu bezpośrednich metod sterowania robotem. #include <cstdlib> #include <Aria.h> int main(int argc, char **argv) // Inicjalizacja biblioteki Aria::init(); // formatowanie parametrów programu ArArgumentParser parser(&argc, argv); parser.loaddefaultarguments(); 15 // Sprawdzenie czy przekazano prawidłowe argumenty do programu if (!Aria::parseArgs()!parser.checkHelpAndWarnUnparsed()) Aria::logOptions(); Aria::exit(1); return 1; // Robot ArRobot robot; // Obiekt sterujący połączeniem z robotem ArRobotConnector robotconnector(&parser, &robot); if(!robotconnector.connectrobot()) ArLog::log(ArLog::Terse, "Bład połączenia z robotem.");
16 Aria::exit(1); // uruchom wątek robota robot.runasync(true); ArUtil::sleep(1000); // uruchomienie silników robot.lock(); robot.comint(arcommands::enable, 1); robot.unlock(); // Kod sterowania robotem // // // // poczekaj na watek robota robot.waitforrunexit(); ArLog::log(ArLog::Normal, "Połączenie z robotem się powiodło."); Aria::exit(0); return 0; 7.2 Sterowanie pośrednie przy wykorzystaniu akcji Sterowanie robota przy wykorzystaniu akcji odbywa się przez utworzenie klasy, której rodzicem są klasy: ArMode, ArAction, ArActionGroup. Klasy te służą do określenia jak robot zachowywać się będzie w zależności od występujących sytuacji zewnętrznych. Klasa ArAction reprezentuje pojedynczą akcję, którą zostaje podjęta w wyniku wystąpienia jakiejś sytuacji. Implementacja klasy pochodnej powinna zawierać metodę ArAction::fire. Metoda ta w parametrze przyjmuje informacje o tym co robot będzie wykonywał w danej jednostce czasu. Zwracany obiekt określa jaka akcja będzie wykonywana. Zwrócenie wartości NULL jest równoznaczne z brakiem chęci modyfikacji poprzedniej akcji. Kolejność w jakiej uruchamiane są metody fire zależy od nadanego jej priorytetu. Ponadto biblioteka oferuje wiele gotowych akcji np. ActionGoto, ArActionTurn, ArActionAvoidFront, ArActionAvoidSide, ArActionBumpers, ArActionColorFollow, ArActionConstantVelocity, ArActionDeceleratingLimiter, ArActionDriveDistance, ArActionGoto, ArActionGotoStraight, ArActionInput, ArActionIRs, ArActionJoydrive, ArActionKeydrive, ArActionLimiterBackwards, ArActionLimiterForwards, ArActionLimiterTableSensor, ArActionMovementParameters, ArActionRatioInput, ArActionRobotJoydrive, ArActionStallRecover, ArActionStop, ArActionTriangleDriveTo, ArActionTurn, Chase i JoydriveAction. Przykład wykorzystania akcji: #include <Aria.h> class ActionGoForward : public ArAction 16
17 public: ActionGo(double maxspeed, double distance) this->mymaxspeed = maxspeed; this->mystopdistance = distance; this->mysonar = nullptr; setnextargument(ararg("maximum speed", &mymaxspeed, "Maximum speed to go.")); setnextargument(ararg("stop distance", &mystopdistance, "Stop Distance. ")); virtual ArActionDesired *fire(aractiondesired currentdesired) double range; double speed; mydesired.reset(); if (mysonar == NULL) deactivate(); return NULL; range = mysonar->currentreadingpolar(-70, 70) - myrobot->getrobotradius(); if (range > mystopdistance) speed = range *.3; if (speed > mymaxspeed) speed = mymaxspeed; mydesired.setvel(speed); else mydesired.setvel(0); return &mydesired; virtual void setrobot(arrobot *robot) ArAction::setRobot(robot); mysonar = robot->findrangedevice("sonar"); if (robot == NULL) ArLog::log(ArLog::Terse, "No sonar found, deactivating."); deactivate(); protected: ArRangeDevice *mysonar; ArActionDesired mydesired; double mymaxspeed; double mystopdistance; ; 17
18 int main(int argc, char** argv) Aria::init(); ArSimpleConnector conn(&argc, argv); ArRobot robot; ArSonarDevice sonar; ActionGoForward goforward(500, 350); if(!aria::parseargs()) Aria::logOptions(); return 1; if(!conn.connectrobot(&robot)) ArLog::log(ArLog::Terse, "Could not connect to robot! Exiting."); return 2; robot.addrangedevice(&sonar); robot.addaction(&goforward, 50); robot.enablemotors(); robot.run(true); Aria::exit(0); Klasa ArMode służy do reprezentowania tybu pracy robota. Tryb pracy robota zwykle określą się przez instancje klasy ArActionGroup, która reprezentuje zbiór akcji. Zbiór ten z kolei reprezentuje zachowanie robota przypisane danemu trybowi. Przykład wykorzystania ArActionGroup: #include <Aria.h> ArActionGroup *teleop; ArActionGroup *wander; void teleopmode(void) teleop->activateexclusive(); printf("\n== Teleoperation Mode ==\n"); printf(" Use the arrow keys to drive, and the spacebar to stop.\n For joystick control hold the trigger button.\n Press 'w' to switch to wander mode.\n Press escape to exit.\n"); void wandermode(void) 18
19 wander->activateexclusive(); printf("\n== Wander Mode ==\n"); printf(" The robot will now just wander around avoiding things.\n Press 't' to switch to teleop mode.\n Press escape to exit.\n"); int main(int argc, char** argv) Aria::init(); ArArgumentParser argparser(&argc, argv); ArSimpleConnector con(&argparser); ArRobot robot; ArSonarDevice sonar; argparser.loaddefaultarguments(); if(!aria::parseargs()!argparser.checkhelpandwarnunparsed()) Aria::logOptions(); return 1; teleop = new ArActionGroup(&robot); teleop->addaction(new ArActionLimiterTableSensor, 100); teleop->addaction(new ArActionLimiterForwards("speed limiter near", 300, 600, 250), 95); teleop->addaction(new ArActionLimiterForwards("speed limiter far", 300, 1100, 400), 90); teleop->addaction(new ArActionLimiterBackwards, 85); ArActionJoydrive joydriveact("joydrive", 400, 15); teleop->addaction(&joydriveact, 50); teleop->addaction(new ArActionKeydrive, 45); wander = new ArActionGroup(&robot); wander->addaction(new ArActionStallRecover, 100); wander->addaction(new ArActionBumpers, 75); wander->addaction(new ArActionAvoidFront("Avoid Front Near", 225, 0), 50); wander->addaction(new ArActionAvoidFront, 45); wander->addaction(new ArActionConstantVelocity("Constant Velocity", 400), 25); 19
20 ArKeyHandler *keyhandler = Aria::getKeyHandler(); if (keyhandler == NULL) keyhandler = new ArKeyHandler; Aria::setKeyHandler(keyHandler); robot.attachkeyhandler(keyhandler); ArGlobalFunctor teleopcb(&teleopmode); ArGlobalFunctor wandercb(&wandermode); keyhandler->addkeyhandler('w', &wandercb); keyhandler->addkeyhandler('w', &wandercb); keyhandler->addkeyhandler('t', &teleopcb); keyhandler->addkeyhandler('t', &teleopcb); if (!joydriveact.joystickinited()) printf("note: Do not have a joystick, only the arrow keys on the keyboard will work.\n"); joydriveact.setstopifnobuttonpressed(false); robot.addrangedevice(&sonar); if(!con.connectrobot(&robot)) ArLog::log(ArLog::Terse, "Could not connect to the robot."); Aria::exit(1); robot.enablemotors(); teleopmode(); robot.run(true); Aria::exit(0); 8 Zadania do wykonania Z wykonywanych zadań laboratoryjnych należy przygotować sprawozdanie. Sprawozdanie powinno zawierać kody źródłowe wykonanych na laboratorium programów wraz z stosownym opisem, oraz zrzuty ekranu zawierające przygotowane środowisko symulacyjne. 1. Uruchom aplikację MobileSim i zaprojektuj środowisko laboratoryjne. 2. Znajdź w dokumentacji biblioteki ARIA metody wymienione w rozdziale Napisz program umożliwiający robotowi jazdę do przodu. 4. Uruchom aplikację MobileSim i podłącz się do symulowanego robota wykorzystując projekt program z punktu drugiego. 5. Zmodyfikuj projekt tak, aby zaprezentować sterowanie robotem wykorzystując bezpośrednie metody sterowania (losowe obroty, jazda do przodu i do tylu). 6. Pobierz adres robota w lokalnej sieci komputerowej i uruchom na nim projekt z punktu drugiego. 20
21 7. Zmodyfikuj projekt tak, aby na ekranie pojawiała się informacja o stanie zderzaków robota, wytestuj działanie programu na fizycznym robocie oraz na symulatorze. 8. Zmodyfikuj projekt tak, aby na ekranie pojawiała się informacja o stanie sonarów robota, wytestuj działanie programu na fizycznym robocie oraz na symulatorze. 9. Popraw projekt tak, aby robot unikał zderzeń z przeszkodami, gdy kolizja jest nie unikniona (przeszkoda w odległości 30 cm) robot powinien się zatrzymać. 10. Zmodyfikuj projekt tak, aby robot łagodnie wytracił prędkość przed przeszkodą i zatrzymał się 5 centymetrów przed nią (wykorzystaj kod dostarczonych regulatorów). 11. Zmodyfikuj projekt tak, aby robot sterowany był przez automat skończony zgodny z automatem opisanym w rozdziale Zrealizuj zadanie z punktu piątego wykorzystując klasę ArAction. 13. Zmodyfikuj kod projektu tak, aby robot obracał się w kierunku najbliższej przeszkody. 9 Dodatki 9.1 Wymagane oprogramowanie Oprogramowanie wymagane: Aria MobileSim Visual Studio 2010 Express 9.2 Literatura
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
dr inż. Tomasz Krzeszowski
Microsoft Robotics Developer Studio dr inż. Tomasz Krzeszowski 2017-05-20 Spis treści 1 Przygotowanie do laboratorium... 3 2 Cel laboratorium... 3 3 Microsoft Robotics Developer Studio... 3 3.1 Wprowadzenie...
Informatyka I : Tworzenie projektu
Tworzenie nowego projektu w programie Microsoft Visual Studio 2013 Instrukcja opisuje w jaki sposób stworzyć projekt wykorzystujący bibliotekę winbgi2 w programie Microsoft Visual Studio 2013. 1. Otwórz
Laboratorium Podstaw Robotyki I Ćwiczenie Khepera dwukołowy robot mobilny
Laboratorium Podstaw Robotyki I Ćwiczenie Khepera dwukołowy robot mobilny 16 listopada 2006 1 Wstęp Robot Khepera to dwukołowy robot mobilny zaprojektowany do celów badawczych i edukacyjnych. Szczegółowe
- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
WWW.ICOMFORT.PL e-mail: biuro@icomfort.pl tel.061 622 75 50 fax. 061 622 76 50
I. WIADOMOŚCI WSTĘPNE... 2 1. Podłączenie czytnika ekey module FS IN... 2 2. Podłączenie czytników i elektrozamka... 2 3. Jak poprawnie korzystać z czytnika... 3 4. Jak nie korzystać z czytnika... 3 II.
Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych
Laboratorium OiOSE. Programowanie w środowisku MS Visual C++ 1 Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych Organizacja i Oprogramowanie Systemów Elektronicznych Michał Kowalewski
INSTRUKCJA OBSŁUGI SUPLEMENT
INSTRUKCJA OBSŁUGI SUPLEMENT PROGRAM SONEL ANALIZA 2 Dotyczy analizatorów jakości zasilania PQM-710 i PQM-711 i instrukcji obsługi programu w wersji 1.1 SONEL SA ul. Wokulskiego 11 58-100 Świdnica, Poland
Obiekt. Obiekt sterowania obiekt, który realizuje proces (zaplanowany).
SWB - Systemy wbudowane w układach sterowania - wykład 13 asz 1 Obiekt sterowania Wejście Obiekt Wyjście Obiekt sterowania obiekt, który realizuje proces (zaplanowany). Fizyczny obiekt (proces, urządzenie)
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel
etrader Pekao Podręcznik użytkownika Strumieniowanie Excel Spis treści 1. Opis okna... 3 2. Otwieranie okna... 3 3. Zawartość okna... 4 3.1. Definiowanie listy instrumentów... 4 3.2. Modyfikacja lub usunięcie
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
4. Podstawowa konfiguracja
4. Podstawowa konfiguracja Po pierwszym zalogowaniu się do urządzenia należy zweryfikować poprawność licencji. Można to zrobić na jednym z widżetów panelu kontrolnego. Wstępną konfigurację można podzielić
instrukcja instalacji modemu SpeedTouch 605s
instrukcja instalacji modemu SpeedTouch 605s Spis treści 1. Opis diod kontrolnych i gniazd modemu SpeedTouch 605s... 2 1.1. Opis diod kontrolnych... 2 1.2. Opis gniazd... 3 2. Konfiguracja połączenia przewodowego...
Instrukcja instalacji i konfiguracji Karty EDGE/GPRS SonyEricsson GC85
Instrukcja instalacji i konfiguracji Karty EDGE/GPRS SonyEricsson GC85 SPIS TREŚCI SPIS TREŚCI...2 WSTĘP...2 INSTRUKCJA INSTALACJI I KONFIGURACJI...3 SCHEMAT INSTALACJI KARTY SIM W SE GC85...3 INSTALACJA
Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie
Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CX9000 Sterownik CX9000 należy do grupy urządzeń określanych jako komputery wbudowane (Embedded-PC).
I - Microsoft Visual Studio C++
I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i
Modelowanie obiektowe - Ćw. 1.
1 Modelowanie obiektowe - Ćw. 1. Treść zajęć: Zapoznanie z podstawowymi funkcjami programu Enterprise Architect (tworzenie nowego projektu, korzystanie z podstawowych narzędzi programu itp.). Enterprise
INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG
INSTRUKCJA UŻYTKOWNIKA PORTALU SIDGG dla Państwowy Instytut Geologiczny Państwowy Instytut Badawczy 1. Uruchomienie aplikacji. a. Wprowadź nazwę użytkownika w miejsce Nazwa użytkownika b. Wprowadź hasło
FAQ: 00000042/PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200
Spis treści 1 Opis zagadnienia omawianego w dokumencie.. 2 2 Wstęp do nowego projektu..... 3 2.1 Nowy projekt... 3 2.2 Dodanie nowego urządzenia... 4 3 Program w main... 6 4 Program PC Access.... 8 4.1
Papyrus. Papyrus. Katedra Cybernetyki i Robotyki Politechnika Wrocławska
Katedra Cybernetyki i Robotyki Politechnika Wrocławska Kurs: Zaawansowane metody programowania Copyright c 2014 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu dotyczącego programowania
Aplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - wprowadzenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 Klasa zbiór pól i metod Obiekt
Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie
Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne z modułem BK9050 Moduł BK9050 jest urządzeniem typu Bus Coupler, umożliwiającym instalację rozproszonych grup terminali
Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy z sterownikiem CX1000
Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CX1000 Sterownik CX1000 należy do grupy urządzeń określanych jako komputery wbudowane (Embedded-PC).
Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0
Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0 Wersja z dnia: 2017-08-21 Spis treści Opis... 3 1. Zasady bezpieczeństwa... 3 Instalacja... 3 Użytkowanie...
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)
Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie) UWAGA Podstawowym wymaganiem dla uruchomienia modemu ED77 jest komputer klasy PC z portem USB 1.1 Instalacja
2. W oknie dialogowym Choose Toolbox Items w zakładce.net Framework Components naciskamy przycisk Browse...
KORZYSTANIE Z KONTROLKI.NET LENDEVICERS232 DODAWANIE KONTROLKI DO ZBIORU KOMPONENTÓW DOSTĘPNYCH W PALECIE TOOLBOX (ŚRODOWISKA PROGRAMISTYCZNE FIRMY MICROSOFT) W środowisku programistycznym (Visual C++,
Zastosowania Robotów Mobilnych
Zastosowania Robotów Mobilnych Temat: Zapoznanie ze środowiskiem Microsoft Robotics Developer Studio na przykładzie prostych problemów nawigacji. 1) Wstęp: Microsoft Robotics Developer Studio jest popularnym
Instrukcja instalacji Control Expert 3.0
Instrukcja instalacji Control Expert 3.0 Program Control Expert 3.0 jest to program służący do zarządzania urządzeniami kontroli dostępu. Dedykowany jest dla kontrolerów GRx02 i GRx06 oraz rozwiązaniom
UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.
UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami
Synchronizator plików (SSC) - dokumentacja
SZARP http://www.szarp.org Synchronizator plików (SSC) - dokumentacja Wersja pliku: $Id: ssc.sgml 4420 2007-09-18 11:19:02Z schylek$ > 1. Witamy w programie SSC Synchronizator plików (SZARP Sync Client,
Programowanie obiektowe
Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.
Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie
Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CP6601 Sterownik CP6601 należy do grupy urządzeń określanych jako komputery przemysłowe (Industrial
Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor
Instrukcja podłączania komputerów z systemem Microsoft Windows Vista/7 do sieci eduroam
Instrukcja podłączania komputerów z systemem Microsoft Windows Vista/7 do sieci eduroam Przed rozpoczęciem konfiguracji sieci eduroam należy upewnić się, że bezprzewodowa karta sieciowa w komputerze jest
Dla przykładu, w instrukcji tej wykorzystano model TL-WA701ND.
Instalacja Podłączenie urządzenia Dla przykładu, w instrukcji tej wykorzystano model TL-WA701ND. Nadaj komputerowi statyczny adres IP: 192.168.1.100. W razie problemów przejdź do punktu T3 sekcji Rozwiązywanie
Roboty Przemysłowe. Rys. 1. Główne okno Automation Studio.
Roboty Przemysłowe 2. Pozycjonowane zderzakowo manipulatory pneumatyczne - symulacja pracy manipulatora w środowisku Automation Studio Celem ćwiczenia jest przygotowanie i przeprowadzenie symulacji ruchu
Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C
Temat 1. Podstawy Środowiska Xcode i wprowadzenie do języka Objective-C Wymagana wiedza wstępna: 1) Student musi 1) Znać język C 2) Znać zasady zarządzania pamięcią w komputerze 3) Znać pojecie wskaźnika
CENTRALA STERUJĄCA SMART CONTROL
Dane Techniczne / Możliwość sterowania urządzeniami marki YOODA i CORTINO za pomocą smartfonów, tabletów i komputera / Tworzenie i zarządzanie grupami urządzeń / Możliwość konfiguracji zdarzeń czasowych
Zaawansowane aplikacje internetowe - laboratorium
Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest
Instrukcja do oprogramowania ENAP DEC-1
Instrukcja do oprogramowania ENAP DEC-1 Do urządzenia DEC-1 dołączone jest oprogramowanie umożliwiające konfigurację urządzenia, rejestrację zdarzeń oraz wizualizację pracy urządzenia oraz poszczególnych
Przygotowanie urządzenia:
Przygotowanie urządzenia: Krok 1 Włączyć i zresetować wzmacniacz sygnału TL-WA730RE do ustawień fabrycznych naciskając i przytrzymując przycisk RESET, który znajduje się z tyłu tego urządzenia przez około
1. Wstęp. Wizualizacja połączenia
Konfiguracja tunelu VPN na module SCALANCE S623 1. Wstęp W tym przykładzie zajmiemy się konfiguracją tunelu VPN (Virtual Private Network) w trybie standard mode. Moduły zabezpieczeń Security module 1 oraz
Instrukcja instalacji oraz konfiguracji sterowników. MaxiEcu 2.0
Instrukcja instalacji oraz konfiguracji sterowników. MaxiEcu 2.0 Wersja instrukcji 1.0.1 1 SPIS TREŚCI 1. Sprawdzenie wersji systemu Windows... 3 2. Instalacja sterowników interfejsu diagnostycznego...
Języki i metody programowania Java Lab2 podejście obiektowe
Języki i metody programowania Java Lab2 podejście obiektowe https://docs.oracle.com/javase/tutorial/ http://zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady/pojava/javazk4_2.pdf Zofia Kruczkiewicz 1 Zadanie
Instrukcja konfiguracji urządzenia TL-WA830RE v.2
Instrukcja konfiguracji urządzenia TL-WA830RE v.2 Przygotowanie urządzenia: Krok 1 Włączyć i zresetować wzmacniacz sygnału TL-WA830RE do ustawień fabrycznych naciskając i przytrzymując przycisk RESET,
Instrukcja obsługi programu MPJ6
Instrukcja obsługi programu MPJ6 Spis treści 1. LOGOWANIE...3 2. INTERFEJS UŻYTKOWNIKA...4 2.1. WIDOK GŁÓWNY...5 2.1.1. Ustawienia...5 2.1.2. Wybór klasy...5 2.1.3. Zegar...5 2.1.4. Timer...6 2.1.5. Tryb
Instrukcja laboratoryjna cz.3
Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:
Ćwiczenia laboratoryjne. Oprogramowanie i badanie prostych metod sortowania w tablicach
Ćwiczenia laboratoryjne Oprogramowanie i badanie prostych metod sortowania w tablicach Sprawozdanie Na każdym zajęciu laboratoryjnym sporządza się za pomocą edytora Word sprawozdanie. Bazowa zawartość
Ćwiczenie 7 Sieć bezprzewodowa z wykorzystaniem rutera.
. Cel ćwiczenia: - Krótka charakterystyka rutera (przypomnienie). - Bezprzewodowe połączenie rutera z komputerem w celu jego konfiguracji. - Szybka konfiguracja rutera do pracy przy użyciu interfejsu bezprzewodowego.
Projekt Zaprogramować działanie robota w narzędziu USARSim
WYŻSZA SZKOŁA INFORMATYKI I ZARZĄDZANIA Z SIEDZIBĄ W RZESZOWIE Inteligentne Systemy Autonomiczne Projekt Zaprogramować działanie robota w narzędziu USARSim Prowadzący: Wykonawca: Mgr Daniel Jachyra Paweł
Ćwiczenie 5a Sieć komputerowa z wykorzystaniem rutera.
. Cel ćwiczenia: - Krótka charakterystyka rutera. - Połączenie rutera z komputerem w celu jego konfiguracji. - Szybka konfiguracja rutera do pracy w przewodowej sieci LAN. - Zmiana adresu rutera. - Konfiguracja
Konfigurowanie sterownika BX9000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy ze sterownikiem BX9000
Konfigurowanie sterownika BX9000 firmy Beckhoff wprowadzenie 1. Konfiguracja pakietu TwinCAT do współpracy ze sterownikiem BX9000 Stanowisko laboratoryjne ze sterownikiem BX9000 Sterownik BX9000 należy
Programowanie Systemów Czasu Rzeczywistego
Programowanie Systemów Czasu Rzeczywistego Laboratorium Wprowadzenie Mariusz RUDNICKI mariusz.rudnicki@eti.pg.gda.pl 2016 Spis treści Przygotowanie platform docelowej.... 3 Przygotowanie środowiska programistycznego
Instalacja sterownika portu USB
Instrukcja instalacji modemu TechLab ED77 w systemie Mac OS X. Instalacja modemu podzielona jest na cztery etapy: instalacja sterownika portu USB, instalacja skryptu modemu, konfiguracja modemu, konfiguracja
Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1
Podstawy programowania, Poniedziałek 30.05.2016, 8-10 Projekt, część 1 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem
VetLINK moduł MAPA Instrukcja obsługi
VetLINK moduł MAPA Instrukcja obsługi Spis treści Wstęp...1 Przeglądanie i filtrowanie danych...3 Dodawanie nowych obiektów...3 Dodawanie miejsca...3 Dodawanie ogniska...3 Dodawanie obszaru...4 Wstęp Moduł
PROGRAMOWALNE STEROWNIKI LOGICZNE
PROGRAMOWALNE STEROWNIKI LOGICZNE I. Wprowadzenie Klasyczna synteza kombinacyjnych i sekwencyjnych układów sterowania stosowana do automatyzacji dyskretnych procesów produkcyjnych polega na zaprojektowaniu
Ćwiczenie 5b Sieć komputerowa z wykorzystaniem rutera.
. Cel ćwiczenia: - Krótka charakterystyka rutera. - Połączenie rutera z komputerem w celu jego konfiguracji. - Szybka konfiguracja rutera do pracy w przewodowej sieci LAN. - Zmiana adresu rutera. - Konfiguracja
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.
Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby
Następnie kliknąć prawym klawiszem myszy na Połączenie sieci bezprzewodowej i wybrać Wyłącz.
Przygotowanie urządzenia: Krok 1 Włączyć i zresetować wzmacniacz sygnału TL-WA850RE do ustawień fabrycznych naciskając i przytrzymując przycisk RESET, który znajduje obok portu LAN tego urządzenia przez
Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl
Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z
Konfiguracja podglądu obrazu z kamery IP / rejestratora BCS przez sieć LAN.
Konfiguracja podglądu obrazu z kamery IP / rejestratora BCS przez sieć LAN. Aby oglądać obraz z kamery na komputerze za pośrednictwem sieci komputerowej (sieci lokalnej LAN lub Internetu), mamy do dyspozycji
Układy VLSI Bramki 1.0
Spis treści: 1. Wstęp... 2 2. Opis edytora schematów... 2 2.1 Dodawanie bramek do schematu:... 3 2.2 Łączenie bramek... 3 2.3 Usuwanie bramek... 3 2.4 Usuwanie pojedynczych połączeń... 4 2.5 Dodawanie
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Instrukcja konfiguracji urządzenia TL-WA830RE v.1
Instrukcja konfiguracji urządzenia TL-WA830RE v.1 Przygotowanie urządzenia: Krok 1 Włączyć i zresetować wzmacniacz sygnału TL-WA830RE do ustawień fabrycznych naciskając i przytrzymując przycisk RESET,
Projekt procesora NIOSII w strukturze programowalnego układu logicznego CYCLONEII EP2C35F672C6 podłączenie i obsługa wyświetlacza LCD.
LAB. 2 Projekt procesora NIOSII w strukturze programowalnego układu logicznego CYCLONEII EP2C35F672C6 podłączenie i obsługa wyświetlacza LCD. Laboratorium Mikroprocesorowych Układów Sterowania instrukcja
Zaawansowane aplikacje WWW - laboratorium
Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w
1. INSTALACJA SERWERA
1. INSTALACJA SERWERA Dostarczony serwer wizualizacji składa się z: 1.1. RASPBERRY PI w plastikowej obudowie; 1.2. Karty pamięci; 1.3. Zasilacza 5 V DC; 1,5 A; 1.4. Konwertera USB RS485; 1.5. Kabla
Wstęp. Skąd pobrać program do obsługi FTP? Logowanie
Wstęp FTP - (ang. File Transfer Protocol - protokół transmisji danych) jest to protokół typu klient-serwer, który umożliwia przesyłanie plików na serwer, oraz z serwera poprzez program klienta FTP. Dzięki
System epon Dokumentacja użytkownika
System epon Dokumentacja użytkownika Prawa autorskie tego opracowania należą do MakoLab S.A. Dokument ten, jako całość, ani żadna jego część, nie może być reprodukowana lub rozpowszechniana w jakiejkolwiek
Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:
Interfejs w MFC 1. Tworzenie nowego projektu Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej: Następnie wybieramy opcje jak na rysunku: Następnie wybieramy
ROZDZIAŁ 1. PRZEGLĄD BRAMOFONU SAFE...
Spis treści INSTRUKCJA OBSŁUGI SPIS TREŚCI ROZDZIAŁ 1. PRZEGLĄD BRAMOFONU SAFE... 2 1.3. WYMAGANIA SYSTEMU... 2 ROZDZIAŁ 2. APLIKACJA I URZĄDZENIE.... 4 2.1. DODAWANIE BRAMOFONU DO APLIKACJI... 4 2.2.
Skrócona instrukcja obsługi rejestratorów marki IPOX
Skrócona instrukcja obsługi rejestratorów marki IPOX v 1.1, 07-09-2015 1 Spis treści 1. Pierwsze uruchomienie...3 2. Logowanie i przegląd menu rejestratora...4 3. Ustawienia nagrywania...6 4. Odtwarzanie
1. Regulatory ciągłe liniowe.
Laboratorium Podstaw Inżynierii Sterowania Ćwiczenie: Regulacja ciągła PID 1. Regulatory ciągłe liniowe. Zadaniem regulatora w układzie regulacji automatycznej jest wytworzenie sygnału sterującego u(t),
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 08 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami powiązania modelu obiektowego z modelem okienkowym w C#. Wprowadzenie teoretyczne.
Edge-Core Networks Przełączniki WebSmart: Podręcznik Administratora
ROZWIĄZANIA DLA SIECI WiFi, ISP, DC, Systemów zabezpieczeń Edge-Core Networks Przełączniki WebSmart: Podręcznik Administratora Historia wersji Wersja Data Utworzył Uwagi 1.0 2015-01-08 Adam Kozłowski Wykorzystane
INSTRUKCJA UZUPEŁNIAJĄCA DO CENTRAL DUPLEX ZE STEROWANIEM RD4
INSTRUKCJA UZUPEŁNIAJĄCA DO CENTRAL DUPLEX ZE STEROWANIEM RD4 Quatrovent Morska 242 Gdynia Tel. +48 58 3505995, fax +48 58 6613553 1 Spis treści I. Ustawienie orientacji wentylatorów...3 A. Za pomocą regulatora
Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:
Zakres laboratorium: definiowanie struktur terminologia obiektowa definiowanie klas funkcje składowe klas programy złożone z wielu plików zadania laboratoryjne Laboratorium nr 12 Temat: Struktury, klasy.
Instrukcja obsługi programu CMS Dla rejestratorów HANBANG
Instrukcja obsługi programu CMS Dla rejestratorów HANBANG 1. Wymagania sprzętowe: Minimalne wymagania sprzętowe: System operacyjny: Windows Serwer 2003 Standard Edition SP2 Baza danych: Mysql5.0 Procesor:
POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY KATEDRA ENERGOELEKTRYKI LABORATORIUM INTELIGENTNYCH INSTALACJI ELEKTRYCZNYCH
POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY KATEDRA ENERGOELEKTRYKI LABORATORIUM INTELIGENTNYCH INSTALACJI ELEKTRYCZNYCH Wprowadzenie do oprogramowania firmowego Eaton RF-System (na podstawie dokumentacji
Programowanie w Javie
Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student
SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE
SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE, AiR r. I, sem. II Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE
Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio
Podstawy programowania Ćwiczenie Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Tematy ćwiczenia algorytm, opis języka programowania praca ze środowiskiem, formularz, obiekty
Rys. 1. Brama przesuwna do wykonania na zajęciach
Programowanie robotów off-line 2 Kuka.Sim Pro Import komponentów do środowiska Kuka.Sim Pro i modelowanie chwytaka. Cel ćwiczenia: Wypracowanie umiejętności dodawania własnych komponentów do programu oraz
Programowanie obiektowe zastosowanie języka Java SE
Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Zagadnienia 1. Delegaty wiązane, właściwości indeksowane 2. Delegaty niewiązane 3. Nowa wersja kalkulatora, delegaty
Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz
Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania
INSTRUKCJA obsługi certyfikatów
INSTRUKCJA obsługi certyfikatów dla użytkownika bankowości internetowej Pocztowy24 z wybraną metodą autoryzacji Certyfikat Spis treści 1. Wstęp... 3 1.1 Wymagania techniczne... 3 2. Certyfikat jako jedna
Laboratorium 1. I. Zainstaluj program Eclipse (wersja C/C++ w odpowiednim systemie operacyjnym
Laboratorium 1 I. Zainstaluj program Eclipse (wersja C/C++ http://www.eclipse.org/downloads/) w odpowiednim systemie operacyjnym II. Zainstaluj narzędzia Windows CDT (w Eclipse jako software site dodajemy
Podstawy Programowania Podstawowa składnia języka C++
Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include
MATERIAŁY DYDAKTYCZNE. Streszczenie: Z G Łukasz Próchnicki NIP w ramach projektu nr RPMA /15
MATERIAŁY DYDAKTYCZNE w ramach projektu nr RPMA.10.01.01-14-3849/15 Streszczenie: Administracja witryny e-learning NIP 799-174-10-88 Spis treści 1. Ustawienia strony głównej... 2 2. Jak powinna wyglądać
wpisujemy prawidłowe ustawienia dla naszej sieci lokalnej ustawienia
Procedura uruchomienia współpracy pomiędzy systemem monitoringu Aparo opartym na rejestratorach serii AR a systemem automatyki budynkowej Fibaro dla centrali HC2 1. Podłączyć żądaną ilość kamer do rejestratora
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.
Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,
2.2 Opis części programowej
2.2 Opis części programowej Rysunek 1: Panel frontowy aplikacji. System pomiarowy został w całości zintegrowany w środowisku LabVIEW. Aplikacja uruchamiana na komputerze zarządza przebiegiem pomiarów poprzez
Compas 2026 Vision Instrukcja obsługi do wersji 1.07
Compas 2026 Vision Instrukcja obsługi do wersji 1.07 1 2 Spis treści Integracja...5 1.Compas 2026 Lan...5 Logowanie...7 Użytkownicy...8 Raporty...10 Tworzenie wizualizacji Widoki...12 1.Zarządzanie widokami...12
Konfiguracja połączenia szerokopasmowego na Windows98/98SE Instalacja PPPoE w systemie Windows 98 i 98SE
Konfiguracja połączenia szerokopasmowego na Windows98/98SE Instalacja PPPoE w systemie Windows 98 i 98SE Aby zainstalować protokół PPPoE, należy wcześniej przygotować system. Przygotowanie polega na aktualizacji
Projektowanie aplikacji internetowych laboratorium
Projektowanie aplikacji internetowych laboratorium Programowanie w języku Java Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne NetBeans 7 (zrzuty ekranów pochodzą z wersji