Języki Programowania Robotów. Prof. dr hab. inż. Mariusz Giergiel KRiDM AGH

Wielkość: px
Rozpocząć pokaz od strony:

Download "Języki Programowania Robotów. Prof. dr hab. inż. Mariusz Giergiel KRiDM AGH"

Transkrypt

1 Języki Programowania Robotów Prof. dr hab. inż. Mariusz Giergiel KRiDM AGH

2 Wprowadzenie Złożoność zagadnień współpracy użytkownika z robotem wzrasta, gdyż wymagania stawiane stawiane manipulatorom, robotom i innym Urządzeniom programowalnym w zastosowaniach przemysłowych są coraz wyższe. Powoduje to, że sposób interakcji użytkownika z robotem staje się bardzo ważnym zagadnieniem. W rzeczywistości wiele zadań projektowych i wykorzystania robotów przemysłowych skupia się właśnie na tym zagadnieniu. Roboty różnią się istotnie tym od środków tzw. sztywnej automatyzacji tym, że są elastyczne. To znaczy programowalne. Nie tylko sam sposób poruszania jest programowalny, lecz przez wykorzystanie czujników oraz komunikacji z innymi środkami automatyzacji mogą dostosować się do zmian w miarę wykonywania realizowanego zadania.

3 Przy rozpatrywaniu zagadnień programowania robotów należy pamiętać o tym, że jest ono zwykle tylko z elementów zautomatyzowanego procesu. Lokalny zestaw wyposażenia, w skład którego mogą wchodzić jeden lub większa liczba manipulatorów, układy przenośnikowe, podajniki i uchwyty, określa się terminem gniazdo produkcyjne. Na wyższym poziomie organizacji gniazda produkcyjne mogą być połączone w sieci produkcyjne, a centralny komputer sterujący może kierować całym procesem produkcyjnym. Zatem programowanie manipulatorów jest często rozpatrywane jako część szerokiego zagadnienia programowania zespołu różnorodnych maszyn połączonych w zautomatyzowane gniazdo produkcyjne.

4 Trzy poziomy programowania robota. Istnieje wiele postaci sprzęgów opracowanych dla celów programowani robotów. Zanim mikrokomputery gwałtownie rozpowszechniły się w przemyśle sterowniki robotów były podobne do prostych sterowników sekwencyjnych wykorzystywanych do sterowania urządzeń zautomatyzowanych. Współczesne metody sterowania opierają się na programowaniu komputerowym. Wyróżniamy: 1) nauczanie przez pokazywanie 2) języki bezpośredniego programowania robotów, 3) języki programowania na poziomie zadania.

5 1) Nauczanie przez pokazywanie Początkowo wszystkie produkowane roboty były programowane za pomocą metody którą nazywamy nauczaniem przez pokazywanie. Metoda ta polega na przemieszczaniu robota do pożądanego punktu docelowego i zapisywaniu jego pozycji w pamięci programatora. W fazie nauczania robota użytkownik może ręcznie prowadzić robota lub sterować nim za pomocą ręcznego programatora. Programator ręczny jest przenośnym pulpitem z klawiszami, które umożliwiają sterowanie każdym połączeniem ruchowym manipulatora lub każdym stopniem swobody w układzie kartezjańskim. Niektóre z takich sterowników pozwalają na sprawdzenie warunków i wybór opcji działania, co umożliwia zapis prostych programów logicznych. Niektóre współcześnie programatory ręczne są wyposażone w ręczne alfanumeryczne wyświetlacze i w swej złożoności są zbliżone do terminali komputerowych..

6 2) Języki bezpośredniego programowania robotów. Wraz z pojawieniem się niedrogich komputerów o dużej mocy obliczeniowej pojawiła się tendencja programowania robotów w językach programowania komputera. Zazwyczaj języki komputerowego programowania robotów wykazują specjalne cechy, wynikające ze specyfiki programowania manipulatorów i dla tego są nazywane językami programowania robotów. Większość systemów wyposażonych w język programowania robota jest także wyposażona w interfejs w rodzaju ręcznego programatora klawiszowego.

7 Języki bezpośredniego programowania robotów. - wyspecjalizowane języki manipulacyjne - biblioteka podprogramów robota dla istniejącego języka komputerowego - biblioteka podprogramów robota dla nowego języka ogólnego przeznaczenia.

8 Wyspecjalizowane języki manipulacyjne. Takie języki programowania robotów zostały opracowane na podstawie całkiem nowego języka przeznaczonego do zastosowania w specyficznych dla robotów zastosowaniach i nie zawsze może on być traktowany jako ogólny język programowania przykładem jest język VAL, opracowany do sterowania robotów przemysłowych Unimation Inc. Język VAL został rozwinięty jako specjalizowany język sterowania manipulatora, natomiast jest nieefektywny jako ogólny język komputerowy. Na przykład nie operuje liczbami zmiennoprzecinkowymi, lub typu łańcuch znaków a podprogramów nie można wykorzystać do przesyłania argumentów. Dopiero najnowsza wersja VAL2 wykazuje cechy ogólnego języka wysokiego poziomu. Innym przykładem wyspecjalizowanego języka manipulatorów jest język AML opracowany na Uniwersytecie Stanford.

9 Biblioteka podprogramów robota dla istniejącego języka komputerowego. Języki programowania robotów rozwinięto na podstawie popularnych języków komputerowych (np. PASCAL) przez dołączenie specyficznych podprogramów robotowych. Użytkownik pisze zatem w Pascalu korzystając z częstych przywołań pakietów podprogramów wcześniej określonych dla specyficznych potrzeb sterowania robotów. Jako przykład można podać AR-BASIC i Robot BASIC. Oba są zasadniczo bibliotekami podprogramów dla realizacji standardowego BASIC-a. Język JARS, rozwinięty przez Laboratorium Silników Odrzutowych NASA, jest przykładem takiego języka programowania robotów opartego na Pascalu.

10 Biblioteka podprogramów robota dla istniejącego języka komputerowego. Takie języki programowania robotów zostały opracowane dzięki stworzeniu nowego języka ogólnego przeznaczenia jako bazy programowej, a następnie dołączeniu biblioteki wstępnie określonych specyficznych podprogramów sterowania robotów. Przykładem takiego języka programowania robotów jest język AML, opracowany przez koncern IBM. Język programowania robotów KAREL opracowany przez GMF Robotics zalicza się również do tej kategorii, chociaż jest on podobny do języka Pascal.

11 3) Języki programowania na poziomie zadania Trzeci poziom metodologii programowania robotów obejmuje języki programowania na poziomie zadania. Zalicza się tutaj języki, które pozwalają użytkownikowi na wskazanie wprost pożądanych celów, zamiast wyszczególniania każdego działania robota. W takim systemie użytkownik ma możliwość włączenia instrukcji do programu opracowanego na znacznie wyższym poziomie niż języki bezpośredniego programowania robota. System programowania robota na poziomie zadania powinien mieć zdolność automatycznego czy może raczej autonomicznego wykonania wielu planowanych zadań. Na przykład w instrukcji chwycić przedmiot system powinien zaplanować trajektorię manipulatora, zapewniającą uniknięcie kolizji z otoczeniem, automatyczny wybór dobrego usytuowaniu chwytu na przedmiocie i uchwycenie go.

12 Języki bezpośredniego programowania a języki programowania na poziomie zadnia. Granica między tymi językami nie jest całkiem wyraźna. Wprawdzie dokonano znaczących postępów w dziedzinie języków programowania bezpośredniego robotów, które ułatwiają programowanie, lecz te osiągnięcia nie mogą być uznane za składniki systemu programowania na poziomie zadania. Systemy programowania manipulatorów na poziomie zadania dotąd nie istnieją, lecz są przedmiotem ciągłych badań.

13 Wymagania stawiane językowi programowania robota: 1) modelowanie otoczenia, 2) specyfikacja ruchu, 3) struktura programu, 4) warunki programowe, 5) uwzględnienie czujników.

14 1) Modelowanie otoczenia: Ponieważ programy manipulacyjne z definicji dotyczą ruchu obiektów w przestrzeni trójwymiarowej, każdy język programowania robota musi być wyposażony w środki do opisania takich działań. Wspólnym elementem wszystkich języków programowania robota jest istnienie wyspecjalizowanych typów geometrycznych. Na przykład wprowadzone są typy, służące do przedstawienia zbiorów współrzędnych wewnętrznych, jak również pozycji, orientacji układów kartezjańskich. Istnieją również predefiniowane operatory, które mogą operować tymi typami. Układy standardowe mogłyby służyć jako możliwy model otoczenia: wszystkie ruchy są opisane jako ruchy układu narzędzia względem układu stanowiska, a układy celów są zbudowane z dowolnych wyrażeń obejmujących typy geometryczne.

15 Gdy dane jest środowisko programowe robota, które tworzą typy geometryczne, to robot, inne maszyny, części i uchwyty mogą być modelowane przez określenie zmiennych związanych z każdym obiektem. W wielu językach programowania robota definiowanie zmiennych, różnych typów geometrycznych oraz odwołanie się do nich w programie tworzy bazę modelu otoczenia. Zauważmy, że fizyczne kształty obiektów nie są częścią takiego modelu; również nie są nimi powierzchnie, objętości, masy lub inne właściwości. Sposób modelowania obiektów w otoczeniu robota jest jedną z podstawowy decyzji podejmowanych przy projektowaniu systemu programowania robota. Większość współczesnych systemów działa według schematu opisanego powyżej. Pewne systemy modelowania otoczenia pozwalają na zapis powiązania między nazwanymi obiektami. Oznacza to, że system może być powiadomiony o powiązaniu dwóch lub większej liczby nazwanych obiektów.

16 Jeśli jeden obiekt jest bezpośrednio przemieszczony za pomocą odpowiedniej instrukcji programu, to również wszystkie obiekty z nim związane będą przemieszczane. Idealny system modelowania otoczenia powinien zawierać więcej informacji o obiektach, z którymi manipulator ma do czynienia, jak również o samym manipulatorze. Dla przykładu rozważając przykład systemu, w którym obiekty są opisane w postaci modeli typu CAD, przedstawiających przestrzenny kształt obiektu przez podanie definicji ich krawędzi, powierzchni czy objętości. Dysponowanie danymi w takiej postaci pozwala na realizację programowania na poziomie zadania. cech systemu

17 2) Specyfikacja ruchu Podstawową funkcją języka programowania robota jest umożliwienie opisu pożądanych ruchów robota. Poprzez instrukcje ruchu zawarte w w języku programowania użytkownik może wykorzystać możliwość planowania opisu toru. Instrukcje ruchu pozwalają użytkownikowi zadawać punkty bezpośrednie i punkty docelowy oraz wykorzystać ruch interpolowany we współrzędnych konfiguracyjnych lub ruch prostoliniowy w układzie współrzędnych kartezjańskich. Dodatkowo użytkownik może kontrolować prędkość lub czas trwania ruchu.

18 Aby zilustrować sposób składania podstawowych form ruchu rozpatrzymy Następującą sekwencję ruchów manipulatora: - Przemieścić do pozycji cel1 - Przemieścić do linii prostej w pozycji cel2 - Przemieścić bez zatrzymania przez punkt pośredni 1 i zakończyć ruch w pozycji cel3 Przyjmując wszystkie te punkty toru jako Opisane programowy, ten fragment programu Można zapisać w następujący sposób : w języku VAL: move goal1 move goal2 move via1 move goal3

19 W języku AML ( garm znaczy tutaj manipulator): move garm to goal1 move garm to goal2 linearly; move garm to goall3 via via1; W języku Intelledex Robot-BASIC: 10 move goal1 20 move straight goal2 30 cpon 40 move via1 50 move goal3 60 cpoff Większość języków ma podobną składnię dla prostych instrukcji ruchu.

20 Różnice w podstawowych instrukcjach ruchu dla różnych języków programowania stają się bardzie widoczne, gdy rozważymy następujące cechy: 1) Zdolności do wykonywania operacji matematycznych na typach strukturalnych takich jak układy, wektory i macierze obrotu. 2) Zdolności do wykonywania całości geometrycznych w różnych dogodnych reprezentacjach - z możliwością przekształcenia między prezentacjami. 3) Zdolność do nakładania ograniczeń na czas trwania lub prędkość poszczególnych ruchów. W niektórych systemach można zadawać wprost pożądany czas trwania ruchu lub pożądane maksymalne prędkości w połączeniach ruchowych. 4) Zdolność do zadawania celów w różnych układach odniesienia, uwzględniając układy zdefiniowane przez użytkownika i układy będące w ruchu (np. na przenośniku).

21 3) Struktura programu Podobnie jak konwencjonalnych językach programowania komputerów, system programowania robota pozwala użytkowi na wybór programu. Znaczy to, że takie działania jak sprawdzanie wartości, rozgałęzienie pętli, przywołania podprogramów, a nawet przerwania, na ogół występują w językach programowania robotów. W programowaniu automatycznych gniazd produkcyjnych, bardziej niż w wielu innych zastosowaniach komputerów, ważne jest równoczesne wykonywanie działań. Przede wszystkim bardzo często dwa lub więcej robotów pracuje jednocześnie w jednym gnieździe produkcyjnym, aby skrócić czas cyklu trwania procesu. Inną często spotykaną potrzebą jest potrzeba monitorowania różnych procesów za pomocą pewnego rodzaju czujnika.w takim przypadku system musi być zdolny do reakcji.

22 4) Warunki programowe Podobnie jak w przypadku wszystkich Ogólnych języków, dobrze zorganizowane warunki programowania pomagają zwiększyć wydajność programisty. Programowanie manipulatora jest z reguły trudnym procesem interakcyjnym, opartym na metodzie prób i błędów. Jeśli użytkownik będzie zmuszony do ciągłego powtarzania cyklu kompilowania programów, to jego wydajność będzie mała. Dlatego większość współczesnych języków programowania robotów ma możliwości wykonywania pojedynczych instrukcji podczas opracowywania programu i poprawiania błędów. Niezbędne są również takie elementy warunków programowania jest edytor tekstu, debugery i systemy zapisu plików.

23 5) Uwzględnienie czujników Ważnym elementem programowania robota jest informacja pochodząca z czujników. System powinien mieć zdolność do sprawdzania odczytu czujników dotyku i siły oraz wykorzystywania tej informacji. Bardzo użyteczna jest też zdolność do śledzenia odczytu czujników w tle. Połączenie z układem wizyjnym pozwala temu systemowi wysłać do manipulatora współrzędne obiektu będącego przedmiotem zainteresowania. Na przykład w naszym wzorcowym zastosowaniu system wizyjny lokalizuje na taśmie przenośnika i wysyła do sterownika manipulatora informację o jego pozycji i orientacji względem kamery. Pewne czujniki mogą być częścią pozostałego wyposażenia gniazda produkcyjnego. Na przykład pewne sterowniki robotów mogą wykorzystywać sygnały wyjściowe z czujników.

24 Specyficzne problemy związane z językami programowania robota. 1) Wewnętrzny model otoczenia w odniesieniu do zewnętrznej rzeczywistości 2) Zagadnienia czułości programu 3) Wykrywanie błędów

25 1) Wewnętrzny model otoczenia w odniesieniu do zewnętrznej rzeczywistości Główną cechą systemu programowania robota jest model otoczenia, zawarty w komputerze sterującym. Nawet gdy model ten jest całkiem prosty, to wystarczająco trudne jest zapewnienie jego zgodności z fizyczną rzeczywistością. Sprzeczność między modelem wewnętrznym i zewnętrzną rzeczywistością pojawiają się w przypadku słabego lub nieudanego chwytu obiektu, kolizji oraz wielu bardziej subtelnych problemów. Zgodność między modelem wewnętrznym i zewnętrznym otoczeniem musi być zapewniona dla początkowego stanu programu i musi być utrzymana w czasie jego realizacji. Podczas programowania wstępnego lub wykrywania błędów od użytkownika zależy zapewnienie aby stan przedstawiony w programie odpowiadał stanowi fizycznemu gniazda produkcyjnego.

26 2) Zagadnienie czułości programu Standardowym podejściem przy pisaniu dużego programu komputerowego jest programowanie hierarchiczne. Polega ono na opracowania fragmentów programu na niskim poziomie, a następnie utworzeniu z nich większych całości kompletnego programu. Zasadniczym wymogiem przy posługiwaniu się tą metodą jest to, aby małe części były względnie niewrażliwe na instrukcje języka które je poprzedzają i aby ich działanie nie było ograniczone żadnymi założeniami. W programie manipulatora często to nie wystarcza. Programy sterujące manipulatorem mogą być bardzo czułe na warunki początkowe, np. na początkową pozycję manipulatora. W realizacji trajektorii ruchu pozycja początkowa będzie wpływać na trajektorię, jaka będzie realizowana w danym ruchu. Początkowa prędkość manipulatora może również wpływać na prędkość ruchu.

27 3) Wykrywanie błędów Inną konsekwencją pracy w świecie rzeczywistym jest różnica między prawdziwym a spodziewanym położeniem obiektów manipulowanych. Część oprogramowania manipulatorów podejmuje próby uwzględnienia tego faktu i przeprowadzenia operacji montażowych tak dokładnie jak to jest możliwe. Lecz nawet wtedy błędy są prawdopodobne. Stąd ważnym aspektem programowania manipulatora jest uniknięcie tych błędów. Prawie każda instrukcja ruchu w programie może nie zostać wykonana prawidłowo z różnych powodów. Najczęstsze przyczyny to przesuwające się lub wypadające z chwytaka przedmioty, obiekty nie znajdujące się tam, gdzie powinny się znaleźć, zaklinowanie elementu podczas wkładania do otworu, niemożliwość zrealizowania otworu.

28 Język programowania robotów V/V+ Jednym z przykładów współczesnych języków programowania robotów jest język V/V+. Język V/V+ jest to komputerowy system programowania Zaprojektowany specjalnie dla robotów przemysłowych firmy Adept Technology, systemów wizyjnych i systemów sterowania ruchem. System komputerowy zapewnia możliwość łatwego definiowania zadania, które ma wykonać system automatyzacji, od momentu, w którym zadania są w pełni zdefiniowane przez aplikacje. Jest on między innymi stosowany dla robota Adpet One wykorzystywanego w Katedrze Robotyki i Dynamiki Maszyn Akademii Górniczo Hutniczej, w Krakowie. W odróżnieniu od prezentowanego na zdjęciu robota humanoida robot Adept One jest to nowoczesny robot przemysłowy typu SCARA z napędem elektrycznym.

29 Struktura programu Program to zbiór poleceń, które system V/V+ wykonuje podczas dokonywania obliczeń, aktywacji sygnałów zewnętrznych czy przemieszczania robota. Liczba programów zapamiętanych przez system jest ograniczona tylko ilością pamięci tego systemu. "Nieaktywne" programy mogą być przechowywane na dyskietkach lub dyskach Winchester. Odwoływać się do programu można poprzez podanie jego nazwy (nie więcej niż 15 znaków). Podobnie jak w przypadku nazw zmiennych nazwy programów muszą zaczynać się od litery i mogą stanowić ciąg znaków alfanumerycznych, spacji, podkreśleń i liczb. Nazwy można zapisywać małymi lub wielkimi literami - system odczyta je jako małe litery.

30 Wygląd programu Linie programowe: każda linia lub krok programu jest interpretowana w systemie V/V+ jako instrukcja. Wygląd kroku jest następujący: numer_kroku etykieta_kroku instrukcja; komentarz numer kroku (step number) - nadawany automatycznie, numery są aktualizowane (kroki są przenumerowywane) jeżeli nastąpi wykasowanie lub dodanie któregoś z kroków etykieta (step label) - ponieważ numery są zmieniane wraz z modyfikacją programu, by odwołać się do konkretnego kroku używa się etykiet - numerów od 0 do instrukcja - dodatek do tej dokumentacji zawiera wszystkie instrukcje rozpoznawane przez system V/V+, inne instrukcje mogą być używane jeśli system ma zainstalowane opcjonalne funkcje np. ADEPT Vision komentarz - jego początek jest wskazany przez znak ";"

31 Instrukcje programu Instrukcje mogą być dołączone do jednego programu kontrolnego, aby administrować wykonywaniem jednego lub równocześnie wielu programów. Każda z instrukcji jest równoznaczna z odpowiednimi komendami monitorującymi. Sterowanie (kontrola) programu Instrukcje sterowania wpływają na kolejność, w której wykonywane są instrukcje programowe. I tak, mogą one być używane do kontroli logicznym przepływem wewnątrz programów. Oprócz tych instrukcji,istnieją takie, które mogą być używane dla większej kontroli sekwencji wykonywania instrukcji.

32 Struktura kontroli Występuje różnorodność kolejności instrukcji, które mogą być użyte do organizacji logicznych sekcji programów oraz do kontroli kolejności, w jakiej są wykonywane. Te "struktury" programowe zapewniają środki na załączanie skomplikowanych logicznych zależności w wydajny i łatwy sposób. Struktury konstrukcji różnią się od wszystkich innych instrukcji V/V+ tym, że wszystkie konstrukcje składają się z więcej, niż z jednej linii programowej. I tak, programista musi uważać, aby zawrzeć wszystkie składniki użytych struktur konstrukcji. Część struktur może być czasami zmuszona do tego, aby działała tak samo, jak inna struktura (na przykład, struktury WHILE i DO są identyczne). W takich przypadkach do programisty należy wybór bardziej wygodnej struktury. Jednak powinno się uważać na to, aby upewnić się, ze nie ma subtelnych różnic pomiędzy różnymi wyborami, które mogą zaważyć na tym, jak one się zachowają w konkretnych sytuacjach.

33 Instrukcje przyporządkowania Instrukcje te są używane do określania, że zmienne programowe mają ograniczone znaczenie do programu zawierającego instrukcje Przykład AUTO - Określa zmienne, które będą dynamicznie alokowane na stosie zadań programowych LOCAL - Określa zmienne, które będą statycznie alokowane w pamięci systemowej Instrukcje zapewniają środki dla aplikacji do ustawiania wartości zmiennych programowych i parametrów systemu, do ustawienia stany przełączników kontroli systemu, oraz do ustawiania timera systemowego.

34 Wejście i wyjście Instrukcje te używane są do przeprowadzania różnych operacji wejścia lub wyjścia. Instrukcje te są całkiem zróżnicowane zależnie od liczby typów wejść i wyjść, oraz instrukcji które mogą być wykonane. Na przykład, program może się komunikować z użytkownikiem poprzez terminal systemowy oraz pilota. Program może czytać i zapisywać pliki na dysku. Także zewnętrzne urządzenia mogą być dostępne za pomocą linii wejścia i wyjścia. Graficzny interfejs kontroli System V+ wspomaga obsługę monitorów o wysokiej rozdzielczości przez urządzenie wyjścia. Instrukcje te mogą być używane do tworzenia i administracji oknami graficznymi, do wysyłania informacji do okien, oraz do odbierania wejścia od użytkownika systemu.

35 Sygnały zewnętrzne Program może używać linii wejścia i wyjścia do wyczuwania i kontroli urządzeń zewnętrznych. Instrukcje pozwalają programowi na ustawianie i odczytywanie stanu linii sygnałów binarnych. Kontrola urządzeń peryferyjnych Ponieważ aplikacje używają tych samych urządzeń peryferyjnych (na przykład pilot), instrukcje te są pomocne przy zapewnieniu wyłącznego użytku takiego urządzenia przez program.

36 Funkcje programowe Jakie zawiera język V/V++: Matematyczne Te funkcje są używane w wyrażeniach matematycznych. Kontrola robota Te funkcje o zmiennych rzeczywistych używane są do otrzymywania informacji o stanie robota. Pozycja robota Te funkcje mogą być użyte do otrzymania informacji o położeniu robota. Wartość stała Funkcje te w tej sekcji zwracają tę samą stałą wartość kiedykolwiek są one użyte Wejście i wyjście Te funkcje są używane do wprowadzania danych z binarnych portów wejścia i wyjścia, oraz do odbierania danych znakowych. Manipulacja Łańcuchem Te funkcje zapewniają wartości numeryczne łańcuchów

37 Śledzenie przenośnika Funkcje te zapewniają informację o śledzeniu przenośnika. Różne Funkcje te mogą być użyte w celu uzyskania różnych informacji dla użytku aplikacji. Funkcje pozycjonowania Poniższe instrukcje zwracają wartość pozycji, transformację lub punkt precyzji. Transformacja Funkcje pozycjonowania zwracają wartość transformacji, reprezentującą pozycję i orientację. Punkt precyzji Funkcje te mogą być użyte do komponowania punktu precyzji z wyrażeń, które określają pozycję stawów robota. Funkcje łańcuchowe Poniższe funkcje zwracają wartość łańcuchową.

38 Dziękuję za uwagę Dziękuję za uwagę Prof. dr hab. inż. Mariusz Giergiel KRiDM AGH

Metody pozycjonowania i programowania

Metody pozycjonowania i programowania Metody pozycjonowania Metody pozycjonowania i programowania 1. Pozycjonowanie zderzakowe: dochodzenie do zadanej pozycji wyznaczonej przez zderzaki; brak wpływu na kształt trajektorii 2. Pozycjonowanie

Bardziej szczegółowo

Mechanika Robotów. Wojciech Lisowski. 5 Planowanie trajektorii ruchu efektora w przestrzeni roboczej

Mechanika Robotów. Wojciech Lisowski. 5 Planowanie trajektorii ruchu efektora w przestrzeni roboczej Katedra Robotyki i Mechatroniki Akademia Górniczo-Hutnicza w Krakowie Mechanika Robotów Wojciech Lisowski 5 Planowanie trajektorii ruchu efektora w przestrzeni roboczej Mechanika Robotów KRiM, WIMIR, AGH

Bardziej szczegółowo

Programowanie w języku C++ Grażyna Koba

Programowanie w języku C++ Grażyna Koba Programowanie w języku C++ Grażyna Koba Kilka definicji: Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i zasad

Bardziej szczegółowo

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

PROGRAMOWALNE STEROWNIKI LOGICZNE

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

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Układy sterowania robotów przemysłowych. Warstwa programowania trajektorii ruchu. Warstwa wyznaczania trajektorii ruchu.

Układy sterowania robotów przemysłowych. Warstwa programowania trajektorii ruchu. Warstwa wyznaczania trajektorii ruchu. WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA RiSM Układy sterowania robotów przemysłowych. Warstwa programowania trajektorii ruchu. Warstwa wyznaczania trajektorii ruchu. Dr inż. Mariusz Dąbkowski Zadaniem

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Politechnika Gdańska. Gdańsk, 2016

Politechnika Gdańska. Gdańsk, 2016 Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra Systemów Geoinformatycznych Aplikacje Systemów Wbudowanych Programowalne Sterowniki Logiczne (PLC) Krzysztof Bikonis Gdańsk,

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

Bardziej szczegółowo

WIZUALIZACJA I STEROWANIE ROBOTEM

WIZUALIZACJA I STEROWANIE ROBOTEM Maciej Wochal, Opiekun koła: Dr inż. Dawid Cekus Politechnika Częstochowska, Wydział Inżynierii Mechanicznej i Informatyki, Instytut Mechaniki i Podstaw Konstrukcji Maszyn, Koło Naukowe Komputerowego Projektowania

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Opracował: Jan Front

Opracował: Jan Front Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny

Bardziej szczegółowo

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja

Bardziej szczegółowo

Technologie informacyjne - wykład 12 -

Technologie informacyjne - wykład 12 - Zakład Fizyki Budowli i Komputerowych Metod Projektowania Instytut Budownictwa Wydział Budownictwa Lądowego i Wodnego Politechnika Wrocławska Technologie informacyjne - wykład 12 - Prowadzący: Dmochowski

Bardziej szczegółowo

Zapisywanie algorytmów w języku programowania

Zapisywanie algorytmów w języku programowania Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym

Bardziej szczegółowo

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano Działanie i charakterystyka sterownika GE FANUC VersaMaxNano Sterownik wykonuje cyklicznie program sterujący. Oprócz wykonywania programu sterującego, sterownik regularnie gromadzi dane z urządzeń wejściowych,

Bardziej szczegółowo

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie System komputerowy System komputerowy (ang. computer system) to układ współdziałaniadwóch składowych: sprzętu komputerowegooraz oprogramowania, działających coraz częściej również w ramach sieci komputerowej.

Bardziej szczegółowo

EXSO-CORE - specyfikacja

EXSO-CORE - specyfikacja EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.

Bardziej szczegółowo

T13 Modelowanie zautomatyzowanych procesów wytwórczych, programowanie maszyn CNC

T13 Modelowanie zautomatyzowanych procesów wytwórczych, programowanie maszyn CNC T13 Modelowanie zautomatyzowanych procesów wytwórczych, programowanie maszyn CNC 1. Wstęp Wg normy ISO ITR 8373, robot przemysłowy jest automatycznie sterowaną, programowalną, wielozadaniową maszyną manipulacyjną

Bardziej szczegółowo

Podstawy PLC. Programowalny sterownik logiczny PLC to mikroprocesorowy układ sterowania stosowany do automatyzacji procesów i urządzeń.

Podstawy PLC. Programowalny sterownik logiczny PLC to mikroprocesorowy układ sterowania stosowany do automatyzacji procesów i urządzeń. Podstawy PLC Programowalny sterownik logiczny PLC to mikroprocesorowy układ sterowania stosowany do automatyzacji procesów i urządzeń. WEJŚCIA styki mechaniczne, przełączniki zbliżeniowe STEROWNIK Program

Bardziej szczegółowo

System wizyjny OMRON Xpectia FZx

System wizyjny OMRON Xpectia FZx Ogólna charakterystyka systemu w wersji FZ3 w zależności od modelu można dołączyć od 1 do 4 kamer z interfejsem CameraLink kamery o rozdzielczościach od 300k do 5M pikseli możliwość integracji oświetlacza

Bardziej szczegółowo

STEROWNIKI PROGRAMOWALNE OBSŁUGA AWARII ZA POMOCĄ STEROWNIKA SIEMENS SIMATIC S7

STEROWNIKI PROGRAMOWALNE OBSŁUGA AWARII ZA POMOCĄ STEROWNIKA SIEMENS SIMATIC S7 STEROWNIKI PROGRAMOWALNE OBSŁUGA AWARII ZA POMOCĄ STEROWNIKA SIEMENS SIMATIC S7 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami obsługi stanów awaryjnych w układach sterowania zbudowanych

Bardziej szczegółowo

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych Mechatronika i inteligentne systemy produkcyjne Modelowanie systemów mechatronicznych Platformy przetwarzania danych 1 Sterowanie procesem oparte na jego modelu u 1 (t) System rzeczywisty x(t) y(t) Tworzenie

Bardziej szczegółowo

biegle i poprawnie posługuje się terminologią informatyczną,

biegle i poprawnie posługuje się terminologią informatyczną, INFORMATYKA KLASA 1 1. Wymagania na poszczególne oceny: 1) ocenę celującą otrzymuje uczeń, który: samodzielnie wykonuje na komputerze wszystkie zadania z lekcji, wykazuje inicjatywę rozwiązywania konkretnych

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja

Bardziej szczegółowo

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Instytut Mechaniki i Inżynierii Obliczeniowej  Wydział Mechaniczny Technologiczny Politechnika Śląska Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Języki programowania z programowaniem obiektowym Laboratorium

Bardziej szczegółowo

Instrukcja z przedmiotu Napęd robotów

Instrukcja z przedmiotu Napęd robotów POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY INSTYTUT MASZYN, NAPĘDÓW I POMIARÓW ELEKTRYCZNYCH Instrukcja z przedmiotu Napęd robotów Wieloosiowy liniowy napęd pozycjonujący robot ramieniowy RV-2AJ CEL ĆWICZENIA

Bardziej szczegółowo

Algorytmika i pseudoprogramowanie

Algorytmika i pseudoprogramowanie Przedmiotowy system oceniania Zawód: Technik Informatyk Nr programu: 312[ 01] /T,SP/MENiS/ 2004.06.14 Przedmiot: Programowanie Strukturalne i Obiektowe Klasa: druga Dział Dopuszczający Dostateczny Dobry

Bardziej szczegółowo

WPROWADZENIE Mikrosterownik mikrokontrolery

WPROWADZENIE Mikrosterownik mikrokontrolery WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:

Bardziej szczegółowo

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

Komputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy

Komputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy Programowanie w C++ 1.Czym jest programowanie Pisanie programów to wcale nie czarna magia, tylko bardzo logiczna rozmowa z komputerem. Oczywiście w jednym ze specjalnie stworzonych do tego celu języków.

Bardziej szczegółowo

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład I Podstawowe pojęcia 1, Cyfrowe dane 2 Wewnątrz komputera informacja ma postać fizycznych sygnałów dwuwartościowych (np. dwa poziomy napięcia,

Bardziej szczegółowo

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym Struktura programu użytkownika w systemie mikroprocesorowym start inicjalizacja niekończaca się pętla zadania niekrytyczne czasowo przerwania zadania krytyczne czasowo 1 Znaczenie problematyki programowania

Bardziej szczegółowo

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga! Programowanie I O czym będziemy mówili Podstawy programowania w językach proceduralnym ANSI C obiektowym Java Uwaga! podobieństwa w podstawowej strukturze składniowej (zmienne, operatory, instrukcje sterujące...)

Bardziej szczegółowo

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski Informatyka- wykład Podstawy programowania w Pythonie dr Marcin Ziółkowski Instytut Matematyki i Informatyki Akademia im. Jana Długosza w Częstochowie 23 listopada 2015 r. JĘZYK PYTHON Język Python jest

Bardziej szczegółowo

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p. Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 2 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Komentarze Funkcja printf() Zmienne Łańcuchy

Bardziej szczegółowo

Techniki animacji komputerowej

Techniki animacji komputerowej Techniki animacji komputerowej 1 Animacja filmowa Pojęcie animacji pochodzi od ożywiania i ruchu. Animować oznacza dawać czemuś życie. Słowem animacja określa się czasami film animowany jako taki. Animacja

Bardziej szczegółowo

Wykład PASCAL - Pliki tekstowe

Wykład PASCAL - Pliki tekstowe Podstawy programowania Wykład PASCAL - Pliki tekstowe 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą,

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod

Bardziej szczegółowo

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop. 2016 Spis treści Wprowadzenie 11 Adresaci książki 12 Co wyróżnia tę książkę na

Bardziej szczegółowo

PRACA DYPLOMOWA MAGISTERSKA

PRACA DYPLOMOWA MAGISTERSKA KATEDRA WYTRZYMAŁOSCI MATERIAŁÓW I METOD KOMPUTEROWYCH MACHANIKI PRACA DYPLOMOWA MAGISTERSKA Analiza kinematyki robota mobilnego z wykorzystaniem MSC.VisualNastran PROMOTOR Prof. dr hab. inż. Tadeusz Burczyński

Bardziej szczegółowo

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA 1 Rozdział 1 Praca z makropoleceniami Opis: W tym rozdziale kursanci przechodzą przez wprowadzenie do programowania

Bardziej szczegółowo

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego.

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego. Umiejętność czytania oraz tworzenia diagramów klas UML jest podstawą w przypadku zawodu programisty. Z takimi diagramami będziesz spotykał się w przeciągu całej swojej kariery. Diagramy klas UML są zawsze

Bardziej szczegółowo

Podstawy programowania skrót z wykładów:

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

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH NR

ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH NR TECHNIK MECHATRONIK ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH NR 2 os. SZKOLNE 26 31-977 KRAKÓW www.elektryk2.i365.pl Spis treści: 1. Charakterystyka zawodu 3 2. Dlaczego technik mechatronik? 5 3. Jakie warunki musisz

Bardziej szczegółowo

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA Python wprowadzenie Warszawa, 24 marca 2017 Python to język: nowoczesny łatwy w użyciu silny można pisać aplikacje Obiektowy klejący może być zintegrowany z innymi językami np. C, C++, Java działający

Bardziej szczegółowo

Kinematyka manipulatora równoległego typu DELTA 106 Kinematyka manipulatora równoległego hexapod 110 Kinematyka robotów mobilnych 113

Kinematyka manipulatora równoległego typu DELTA 106 Kinematyka manipulatora równoległego hexapod 110 Kinematyka robotów mobilnych 113 Spis treści Wstęp 11 1. Rozwój robotyki 15 Rys historyczny rozwoju robotyki 15 Dane statystyczne ilustrujące rozwój robotyki przemysłowej 18 Czynniki stymulujące rozwój robotyki 23 Zakres i problematyka

Bardziej szczegółowo

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie

Bardziej szczegółowo

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści Język programowania DELPHI / Andrzej Marciniak. Poznań, 2012 Spis treści Przedmowa 11 Przyjęta notacja 13 Rozdział 1. Wprowadzenie 15 1.1. Ogólne zasady programowania zorientowanego obiektowo 15 1.2. Historia

Bardziej szczegółowo

Tworzenie oprogramowania

Tworzenie oprogramowania Tworzenie oprogramowania dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Tworzenie oprogramowania dla systemów wbudowanych Program wykładu: Tworzenie aplikacji na systemie wbudowanym. Konfiguracja

Bardziej szczegółowo

NIFIED M L ODELLING ANGUAGE. Diagramy czynności

NIFIED M L ODELLING ANGUAGE. Diagramy czynności U M L NIFIED ODELLING ANGUAGE Diagramy czynności 1 Czym jest diagram czynności? Jeden z pięciu rodzajów diagramów UML służących do modelowania dynamicznych aspektów systemu. Przedstawia przepływ sterowania

Bardziej szczegółowo

1. Podstawowe wiadomości...9. 2. Możliwości sprzętowe... 17. 3. Połączenia elektryczne... 25. 4. Elementy funkcjonalne programów...

1. Podstawowe wiadomości...9. 2. Możliwości sprzętowe... 17. 3. Połączenia elektryczne... 25. 4. Elementy funkcjonalne programów... Spis treści 3 1. Podstawowe wiadomości...9 1.1. Sterowniki podstawowe wiadomości...10 1.2. Do czego służy LOGO!?...12 1.3. Czym wyróżnia się LOGO!?...12 1.4. Pierwszy program w 5 minut...13 Oświetlenie

Bardziej szczegółowo

Programowanie kontrolera RH robota S-420S Opracował: Karol Szostek

Programowanie kontrolera RH robota S-420S Opracował: Karol Szostek ZAKŁAD MECHANIKI PŁYNÓW I AERODYNAMIKI LABORATORIUM AUTOMATYZACJI PROCESOW PRODUKCYJNYCH Programowanie kontrolera RH robota S-420S Opracował: Karol Szostek 1. Cel ćwiczenia Rzeszów 2008 Celem ćwiczenia

Bardziej szczegółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

OPISY PRZESTRZENNE I PRZEKSZTAŁCENIA

OPISY PRZESTRZENNE I PRZEKSZTAŁCENIA OPISY PRZESTRZENNE I PRZEKSZTAŁCENIA Wprowadzenie W robotyce przez pojęcie manipulacji rozumiemy przemieszczanie w przestrzeni przedmiotów i narzędzi za pomocą specjalnego mechanizmu. W związku z tym pojawia

Bardziej szczegółowo

Dlaczego GML? Gdańsk r. Karol Stachura

Dlaczego GML? Gdańsk r. Karol Stachura Dlaczego GML? Gdańsk 13.03.2017r. Karol Stachura Zanim o GML najpierw o XML Dlaczego stosuje się pliki XML: Tekstowe Samoopisujące się Elastyczne Łatwe do zmiany bez zaawansowanego oprogramowania Posiadające

Bardziej szczegółowo

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia Bezpieczeństwo systemów komputerowych Java i JavaScript mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Java i JavaScript używane w celu dodania cech interaktywności do stron WWW mogą

Bardziej szczegółowo

BRIDGE CAD ABT - INSTRUKCJA OBSŁUGI

BRIDGE CAD ABT - INSTRUKCJA OBSŁUGI BRIDGE CAD ABT - INSTRUKCJA OBSŁUGI 1. Wiadomości ogólne. Program ABT służy do automatycznego generowania plików *.dat, wykorzystywanych w obliczeniach statycznych i wytrzymałościowych przyczółków mostowych

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

Podstawy robotyki - opis przedmiotu

Podstawy robotyki - opis przedmiotu Podstawy robotyki - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy robotyki Kod przedmiotu 06.9-WE-AiRP-PR Wydział Kierunek Wydział Informatyki, Elektrotechniki i Automatyki Automatyka i robotyka

Bardziej szczegółowo

Liczby losowe i pętla while w języku Python

Liczby losowe i pętla while w języku Python Liczby losowe i pętla while w języku Python Mateusz Miotk 17 stycznia 2017 Instytut Informatyki UG 1 Generowanie liczb losowych Na ogół programy są spójne i prowadzą do przewidywanych wyników. Czasem jednak

Bardziej szczegółowo

Programowanie sterowników PLC wprowadzenie

Programowanie sterowników PLC wprowadzenie Programowanie sterowników PLC wprowadzenie Zakład Teorii Maszyn i Automatyki Katedra Podstaw Techniki Felin p.110 http://ztmia.ar.lublin.pl/sips waldemar.samociuk@up.lublin,pl Sterowniki programowalne

Bardziej szczegółowo

Funkcje i instrukcje języka JavaScript

Funkcje i instrukcje języka JavaScript Funkcje i instrukcje języka JavaScript 1. Cele lekcji a) Wiadomości Uczeń : zna operatory i typy danych języka JavaScript, zna konstrukcję definicji funkcji, zna pętlę If i For, Do i While oraz podaje

Bardziej szczegółowo

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco 3. Sieć PLAN Wszystkie urządzenia podłączone do sieci plan są identyfikowane za pomocą swoich adresów. Ponieważ terminale użytkownika i płyty główne pco wykorzystują ten sam rodzaj adresów, nie mogą posiadać

Bardziej szczegółowo

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby

Bardziej szczegółowo

Sterowniki Programowalne (SP) Wykład 11

Sterowniki Programowalne (SP) Wykład 11 Sterowniki Programowalne (SP) Wykład 11 Podstawy metody sekwencyjnych schematów funkcjonalnych (SFC) SP 2016 WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA INŻYNIERII SYSTEMÓW STEROWANIA Kierunek: Automatyka

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

JĘZYKI PROGRAMOWANIA STEROWNIKÓW JĘZYKI PROGRAMOWANIA STEROWNIKÓW dr inż. Wiesław Madej Wstęp Języki programowania sterowników 15 h wykład 15 h dwiczenia Konsultacje: - pokój 325A - środa 11 14 - piątek 11-14 Literatura Tadeusz Legierski,

Bardziej szczegółowo

CoDeSys 3 programowanie w języku CFC

CoDeSys 3 programowanie w języku CFC Notatka Aplikacyjna NA 03003PL Spis treści 1. Wstęp... 2 1.1. Wymagania programowe... 2 2. Tworzenie projektu i dodawanie programu w... 3 3. Organizacja okien dla języka CFC... 5 4. Składnia języka CFC

Bardziej szczegółowo

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p. Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Wskaźnik do pliku Dostęp do pliku: zapis, odczyt,

Bardziej szczegółowo

Projektowanie systemów zrobotyzowanych

Projektowanie systemów zrobotyzowanych ZAKŁAD PROJEKTOWANIA TECHNOLOGII Laboratorium Projektowanie systemów zrobotyzowanych Instrukcja 4 Temat: Programowanie trajektorii ruchu Opracował: mgr inż. Arkadiusz Pietrowiak mgr inż. Marcin Wiśniewski

Bardziej szczegółowo

Analiza kinematyczna i dynamiczna układu roboczego. koparki DOSAN

Analiza kinematyczna i dynamiczna układu roboczego. koparki DOSAN Metody modelowania i symulacji kinematyki i dynamiki z wykorzystaniem CAD/CAE Laboratorium 7 Analiza kinematyczna i dynamiczna układu roboczego koparki DOSAN Maszyny górnicze i budowlne Laboratorium 6

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości

Bardziej szczegółowo

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015 1 Metody numeryczne Dział matematyki Metody rozwiązywania problemów matematycznych za pomocą operacji na liczbach. Otrzymywane

Bardziej szczegółowo

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło LATO 2007 Projektowanie Graficznych Interfejsów Użytkownika 1 UCD - User Centered Design 1) User Centered Design Projekt Skoncentrowany

Bardziej szczegółowo

2. Architektura mikrokontrolerów PIC16F8x... 13

2. Architektura mikrokontrolerów PIC16F8x... 13 Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator

Bardziej szczegółowo

Sterowniki wagowe rodziny X Kompleksowe sterowanie w procesach ważenia i dozowania

Sterowniki wagowe rodziny X Kompleksowe sterowanie w procesach ważenia i dozowania Sterowniki wagowe rodziny X Kompleksowe sterowanie w procesach ważenia i dozowania Sterowanie ze sterownikami serii X Bezkonkurencyjna jakość i cena Sartorius Hamburg jest jednym z liderów wśród światowych

Bardziej szczegółowo

Moduł 2 Użytkowanie komputerów i zarządzanie plikami wymaga od kandydata znajomości obsługi komputera osobistego.

Moduł 2 Użytkowanie komputerów i zarządzanie plikami wymaga od kandydata znajomości obsługi komputera osobistego. Moduł 2 Użytkowanie komputerów i zarządzanie plikami wymaga od kandydata znajomości obsługi komputera osobistego. Kandydat winien wykazać się wiedzą i umiejętnościami w zakresie: - korzystania z głównych

Bardziej szczegółowo

Szczegółowy opis laboratorium symulującego system produkcyjny

Szczegółowy opis laboratorium symulującego system produkcyjny Załącznik nr... (pieczęć firmowa Wykonawcy) Szczegółowy opis laboratorium symulującego system produkcyjny Opis pracowni: Laboratorium symulujące system produkcyjny zwane dalej pracownią systemów produkcyjnych

Bardziej szczegółowo

Modelowanie krzywych i powierzchni

Modelowanie krzywych i powierzchni 3 Modelowanie krzywych i powierzchni Modelowanie powierzchniowe jest kolejną metodą po modelowaniu bryłowym sposobem tworzenia części. Jest to też sposób budowy elementu bardziej skomplikowany i wymagający

Bardziej szczegółowo

Wykład z Technologii Informacyjnych. Piotr Mika

Wykład z Technologii Informacyjnych. Piotr Mika Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły

Bardziej szczegółowo

Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający- D Uczeń: z zakresu systemów

Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający- D Uczeń: z zakresu systemów WYMAGANIA EDUKACYJNE PRZEDMIOT: Systemy operacyjne NUMER PROGRAMU NAUCZANIA (ZAKRES): 351203 1. 2. Lp Dział programu Funkcje systemu operacyjnego Przygotowanie komputera osobistego do zainstalowania systemu

Bardziej szczegółowo

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem. Podstawy programowania Wykład PASCAL Zmienne wskaźnikowe i dynamiczne 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje zmiennych Zmienne dzielą się na statyczne i dynamiczne. Zmienna

Bardziej szczegółowo

Laboratorium Podstaw Robotyki I Ćwiczenie Khepera dwukołowy robot mobilny

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

Bardziej szczegółowo

Algorytm. Krótka historia algorytmów

Algorytm. Krótka historia algorytmów Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne

Bardziej szczegółowo

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej Efekty na kierunku AiR drugiego stopnia - Wiedza K_W01 K_W02 K_W03 K_W04 K_W05 K_W06 K_W07 K_W08 K_W09 K_W10 K_W11 K_W12 K_W13 K_W14 Ma rozszerzoną wiedzę dotyczącą dynamicznych modeli dyskretnych stosowanych

Bardziej szczegółowo

KOMPUTEROWE WSPOMAGANIE PRAC INŻYNIERSKICH

KOMPUTEROWE WSPOMAGANIE PRAC INŻYNIERSKICH KOMPUTEROWE WSPOMAGANIE PRAC INŻYNIERSKICH Joanna Bartnicka Joanna.Bartnicka@polsl.pl Treści kształcenia 1. Prace inżynierskie w cyklu życia produktu: stadia cyklu życia produktu, typy życia produktu.

Bardziej szczegółowo

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle Uniwersalny rejestrator danych pochodzących z portu szeregowego RS 232 Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle - UNIWERSALNY REJESTRATOR DANYCH Max. 35 GB pamięci! to nowoczesne

Bardziej szczegółowo

Nadzór Linii Produkcyjnych. Jacek Pszczółka AiR 187735

Nadzór Linii Produkcyjnych. Jacek Pszczółka AiR 187735 Nadzór Linii Produkcyjnych Jacek Pszczółka AiR 187735 Linia Produkcyjna Linia produkcyjna albo linia montażowa zespół stanowisk roboczych (maszynowych, ręcznych lub mieszanych) ugrupowanych według kolejności

Bardziej szczegółowo

Laboratorium Napędu Robotów

Laboratorium Napędu Robotów POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY INSTYTUT MASZYN, NAPĘDÓW I POMIARÓW ELEKTRYCZNYCH Laboratorium Napędu Robotów Wieloosiowy liniowy napęd pozycjonujący robot ramieniowy RV-2AJ CEL ĆWICZENIA Celem

Bardziej szczegółowo

Kurs Podstawowy S7. Spis treści. Dzień 1

Kurs Podstawowy S7. Spis treści. Dzień 1 Spis treści Dzień 1 I System SIMATIC S7 - wprowadzenie (wersja 1401) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6 Podstawowe

Bardziej szczegółowo

Robert Barański, AGH, KMIW Writing TDM and TDMS Files in LabVIEW v1.0

Robert Barański, AGH, KMIW Writing TDM and TDMS Files in LabVIEW v1.0 Aby zmniejszyć potrzebę opracowania i utrzymania własnego formatu pliku danych, National Instruments stworzył elastyczne zarządzanie danymi technicznymi (TDM) model danych, który jest standardowo dostępny

Bardziej szczegółowo

Aplikacje w środowisku VBA. Visual Basic for Aplications

Aplikacje w środowisku VBA. Visual Basic for Aplications Aplikacje w środowisku VBA Visual Basic for Aplications Podstawowe informacje o VBA Visual Basic for Aplications, w skrócie VBA, to język programowania rozwijany przez Microsoft, którego zastosowanie pozwala

Bardziej szczegółowo

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne

Bardziej szczegółowo

(12) TŁUMACZENIE PATENTU EUROPEJSKIEGO (19) PL (11) PL/EP 1505553. (96) Data i numer zgłoszenia patentu europejskiego: 05.08.2004 04018511.

(12) TŁUMACZENIE PATENTU EUROPEJSKIEGO (19) PL (11) PL/EP 1505553. (96) Data i numer zgłoszenia patentu europejskiego: 05.08.2004 04018511. RZECZPOSPOLITA POLSKA (12) TŁUMACZENIE PATENTU EUROPEJSKIEGO (19) PL (11) PL/EP 3 (96) Data i numer zgłoszenia patentu europejskiego: 0.08.04 0401811.8 (13) (1) T3 Int.Cl. G08C 17/00 (06.01) Urząd Patentowy

Bardziej szczegółowo

Wstęp do programowania 2

Wstęp do programowania 2 Wstęp do programowania 2 wykład 10 Zadania Agata Półrola Wydział Matematyki UŁ 2005/2006 http://www.math.uni.lodz.pl/~polrola Współbieżność dotychczasowe programy wykonywały akcje sekwencyjnie Ada umożliwia

Bardziej szczegółowo