Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

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

Download "Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania"

Transkrypt

1 Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Przemysłowe układy sterowania PID Układy regulacji PID w strukturze sprzętowej Pytania i zadania do zajęć laboratoryjnych 5 Opracowanie: Tomasz Rutkowski, dr inż. Jarosław Tarnawski, dr inż.

2 Cel laboratorium Celem laboratorium jest: - nabycie umiejętności wykorzystywania kart akwizycji w zastosowaniach akwizycji danych oraz budowaniu układów sterowania, - zilustrowanie struktury pętli sprzętowej i weryfikacji metody sterowania w czasie rzeczywistym - realizacji programowej regulatora PID w językach C/C++, - wykorzystania NAVI SDK i budowy aplikacji dla OS Windows realizującej regulator PID z wykorzystaniem karty akwizycji. Plan przebiegu laboratorium - Zapoznanie się ze sposobem połączenia obiektu sterowania z kartą akwizycji - Konfiguracja Matlab/Simulink/Real-Time Windows Target (RTWT) do realizacji symulacji w czasie rzeczywistym - Identyfikacja obiektów sterowania - Budowa regulatora PID w środowisku RTWT - budowa programu/aplikacji (niezależnej od M/S) dla Windows z wykorzystaniem karty akwizycji: - odczytujących stan wejść analogowych - zapisujących (ustawiających) stan wyjść analogowych - budowa aplikacji dla Windows realizującej zadania regulatora PID 2

3 Karta Advantech PCI-1711 Przyłącze PCLD-8712 Obiekt 3

4 Instrukcja budowy aplikacji dla Windows z wykorzystaniem kart Advantech PCI-1711 i pakietu SDK Instrukcję sporządzono w oparciu o wersje oprogramowania: DAQNavi_SDK_ , SDK 7.1 dla Windows 7 1. Konfiguracja win7 SDK 1.1. Uruchom linię poleceń Windows SDK v7.1 Start -> Wszystkie Programy -> Microsoft Windows SDK v7.1 -> Windows SDK v7.1 -> Command Prompt. Rekomendacja: zamień czcionkę w konsoli na rozmiar 12x Dokonaj konfiguracji ustawiając domyślnie 32-bitowy kompilator i środowisko docelowe Windows 7 wpisując polecenie: SetEnv /win7 /x Konwersja projektów Visual C++ do formatu Visual C (niezbędne do zastosowania SDK) vcupgrade.exe Hello.vcproj, gdzie Hello to przykładowa nazwa uaktualnianego projektu Powinno powstać kilka nowych plików w katalogu źródłowym, a pośród nich plik Hello.vcxproj 2. Przygotowanie struktury plików i katalogów Załóż katalog z nazwiskami członków grupy w katalogu Moje Dokumenty Pobierz dołączony do instrukcji plik Źródła.zip wypakuj do trzech różnych katalogów w założonym folderze opatrzonym nazwą członków grupy: do obsługi analogowych wejść: InstantAI do obsługi analogowych wyjść: StaticAO obsługa we/wy na potrzeby budowy regulatora: PID Odznacz właściwości katalogów: tylko do odczytu Dokonaj konwersji projektów opisanej w pkt. 1.3 dla obu katalogów Zapoznaj się z plikami projektów, a w szczególności z plikami programów *.cpp Poszukaj plików bibliotecznych Advantech NAVI (przeważnie c:\advantech\) i ustal ścieżkę dostępu Dokonaj zmiany odnośników do plików LIB ze względnych na bezwzględne uwzględniając położenie plików. Przykłady w tabeli Adres względny (do Adres bezwzględny (zastępujący) zastąpienia) #include "../inc/compatibility.h" #include "C:\Advantech\DAQNavi\Examples\C++_Console\inc\ compatibility.h" #include "../../../inc/bdaqctrl.h" #include "C:\Advantech\DAQNavi\Inc\bdaqctrl.h" 3. Kompilacja plików Examples Usuń poniższe linie z pliku *.vcxproj co spowoduje wyłączenie przyrostowego sposobu działania Linkera (niezbędne dla popranej budowy aplikacji przez SDK) <LinkIncremental Condition="'$(Configuration) $(Platform)'=='Debug Win32'">true</LinkIncremental> <LinkIncremental Condition="'$(Configuration) $(Platform)'=='Release Win32'">false</LinkIncremental> Dokonaj kompilacji za pomocą polecenia MSBuild Hello.vcxproj Uruchom aplikację, którą odnajdziesz w katalogu bin/debug 4

5 Źródła Konfiguracja SDK ( ) 5

6 KOD OBSŁUGI WEJŚĆ ANALOGOWYCH ******************************************************************************/ #include <stdlib.h> #include <stdio.h> //#include "../inc/compatibility.h" #include "C:\Advantech\DAQNavi\Examples\C++_Console\inc\compatibility.h //#include "../../../inc/bdaqctrl.h" #include "C:\Advantech\DAQNavi\Inc\bdaqctrl.h using namespace Automation::BDaq; // // Configure the following three parameters before running the example // #define devicedescription L"DemoDevice,BID#0" int32 startchannel = 0; const int32 channelcount = 3; inline void waitanykey() dosleep(1); while(!kbhit()); int main(int argc, char* argv[]) ErrorCode ret = Success; // Step 1: Create a 'instantaictrl' for InstantAI function. InstantAiCtrl * instantaictrl = AdxInstantAiCtrlCreate(); do mode. // Step 2: Select a device by device number or device description and specify the access // in this example we use AccessWriteWithReset(default) mode so that we can // fully control the device, including configuring, sampling, etc. DeviceInformation devinfo(devicedescription); ret = instantaictrl->setselecteddevice(devinfo); // Step 3: Read samples and do post-process, we show data here. printf("acquisition is in progress, any key to quit!\n\n"); double scaleddata[channelcount] = 0;//the count of elements in this array should not be less than the value of the variable channelcount int32 channelcountmax = instantaictrl->getfeatures()->getchannelcountmax(); do //read samples and save to buffer 'scaleddata'. ret = instantaictrl->read(startchannel,channelcount,scaleddata); // process the acquired data. only show data here. for (int32 i = startchannel; i< startchannel+channelcount;++i) printf("channel %d data: %10.6f\n", i % channelcountmax, scaleddata[istartchannel]); printf("\n"); SLEEP(1); while(!kbhit()); while(false); // Step 4 : Close device and release any allocated resource. instantaictrl->dispose(); // If something wrong in this execution, print the error code on screen for tracking. if(biofailed(ret)) printf("some error occurred. And the last error code is Ox%X.\n", ret); waitanykey();// wait any key to quit! return 0; 6

7 KOD OBSŁUGI WYJŚĆ ANALOGOWYCH ******************************************************************************/ #include <stdlib.h> #include <stdio.h> #include <math.h> //#include "../inc/compatibility.h" #include "C:\Advantech\DAQNavi\Examples\C++_Console\inc\compatibility.h" //#include "../../../inc/bdaqctrl.h" #include "C:\Advantech\DAQNavi\Inc\bdaqctrl.h" using namespace Automation::BDaq; // // Configure the following three parameters before running the demo // #define ONE_WAVE_POINT_COUNT 512 //define how many data to makeup a waveform period. #define devicedescription L"DemoDevice,BID#0" int32 channelstart = 0; int32 channelcount = 1; enum WaveStyle Sine, Sawtooth, Square ; //function GenerateWaveform: generate one waveform for each selected analog data output channel ErrorCode GenerateWaveform( InstantAoCtrl * instantaoctrl,int32 channelstart,int32 channelcount, double * wavebuffer, int32 SamplesCount,WaveStyle style); inline void waitanykey() dosleep(1); while(!kbhit()); int main(int argc, char* argv[]) ErrorCode ret = Success; // Step 1: Create a 'InstantAoCtrl' for Static AO function. InstantAoCtrl * instantaoctrl = AdxInstantAoCtrlCreate(); do // Step 2: Select a device by device number or device description and specify the access mode. // in this example we use AccessWriteWithReset(default) mode so that we can // fully control the device, including configuring, sampling, etc. DeviceInformation devinfo(devicedescription); ret = instantaoctrl->setselecteddevice(devinfo); // Step 3: Output data // Generate waveform data double *waveform = (double*)malloc( channelcount*one_wave_point_count*sizeof(double)); if( NULL == waveform ) printf( "Insufficient memory available\n" ); ret = GenerateWaveform( instantaoctrl,channelstart,channelcount, waveform,channelcount*one_wave_point_count,sine); printf("\n Outputting data... any key to quit!\n"); bool enforced = false; do for( int32 i = 0; i < ONE_WAVE_POINT_COUNT; i++ ) ret = instantaoctrl->write( channelstart,channelcount,&waveform[channelcount*i] ); SLEEP(1); if(kbhit()) printf("\n Static AO is over compulsorily"); enforced = true; while (false); free(waveform); if (!enforced) 7

8 printf("\n Static AO is over, press any key to quit!\n"); while(false); // Step 4: Close device and release any allocated resource. instantaoctrl->dispose(); // If something wrong in this execution, print the error code on screen for tracking. if(biofailed(ret)) printf("some error occurred. And the last error code is Ox%X.\n", ret); waitanykey();// Wait any key to quit!. waitanykey();// Wait any key to quit! return 0; ErrorCode GenerateWaveform( InstantAoCtrl * instantaoctrl, int32 channelstart,int32 channelcount,double * wavebuffer,int32 SamplesCount,WaveStyle style) ErrorCode ret = Success; int32 channel = 0; int32 channelcountmax = 0; int32 onewavesamplescount = SamplesCount/channelCount; int32 i = 0; MathInterval ranges[64] ; ValueRange valrange; channelcountmax = instantaoctrl->getfeatures()->getchannelcountmax(); for(i = 0;i < channelcountmax ;i++ ) valrange = instantaoctrl->getchannels()->getitem(i).getvaluerange(); if ( V_ExternalRefBipolar == valrange valrange == V_ExternalRefUnipolar ) if (instantaoctrl->getfeatures()->getexternalrefantipolar()) double referencevalue; if (valrange == V_ExternalRefBipolar) referencevalue = instantaoctrl->getextrefvalueforbipolar(); if (referencevalue >= 0) ranges[i].max = referencevalue; ranges[i].min = 0 - referencevalue; ranges[i].max = 0 - referencevalue; ranges[i].min = referencevalue; referencevalue = instantaoctrl->getextrefvalueforunipolar(); if (referencevalue >= 0) ranges[i].max = 0; ranges[i].min = 0 - referencevalue; ranges[i].max = 0 - referencevalue; ranges[i].min = 0; double referencevalue; if (valrange == V_ExternalRefBipolar) referencevalue = instantaoctrl->getextrefvalueforbipolar(); if (referencevalue >= 0) ranges[i].max = referencevalue; ranges[i].min = 0 - referencevalue; ranges[i].max = 0 - referencevalue; ranges[i].min = referencevalue; 8

9 referencevalue = instantaoctrl->getextrefvalueforunipolar(); if (referencevalue >= 0) ranges[i].max = referencevalue; ranges[i].min = 0; ranges[i].max = 0; ranges[i].min = referencevalue; ret = AdxGetValueRangeInformation( valrange,0,null,&ranges[i],null); if(biofailed(ret)) return ret; //generate waveform data and put them into the buffer which the parameter 'wavebuffer' give in, the Amplitude these waveform for(i = 0; i < onewavesamplescount; i++ ) for( int32 j = channelstart; j < channelstart+channelcount; j++ ) //pay attention to channel rollback(when startchannel+channelcount>chnumbermax+1) channel = j%channelcountmax; double amplitude = (ranges[channel].max - ranges[channel].min) / 2; double offset = (ranges[channel].max + ranges[channel].min) / 2; switch ( style) case Sine: *wavebuffer++ = amplitude*(sin((double)i*2.0*( )/onewavesamplescount )) + offset; case Sawtooth: if ((i >= 0) && (i < (onewavesamplescount / 4.0))) *wavebuffer++ = amplitude*( i/(onewavesamplescount/4.0)) + offset; if ((i >= (onewavesamplescount / 4.0)) && (i < 3 * (onewavesamplescount/4.0))) *wavebuffer++ = amplitude* ((2.0*(oneWaveSamplesCount/4.0)- i)/(onewavesamplescount/4.0)) + offset; *wavebuffer++ = amplitude* ((ionewavesamplescount)/(onewavesamplescount/4.0)) + offset; case Square: if ((i >= 0) && (i < (onewavesamplescount / 2))) *wavebuffer++ = amplitude * 1 + offset; *wavebuffer++ = amplitude * (-1) + offset; default: printf("invalid wave style,generate waveform error!"); ret = ErrorUndefined; return ret; ; 9

Realizacja regulatora PID w komputerze PC z kartą akwizycji danych. Opracował na podstawie dokumentacji dr inż. Jarosław Tarnawski

Realizacja regulatora PID w komputerze PC z kartą akwizycji danych. Opracował na podstawie dokumentacji dr inż. Jarosław Tarnawski Realizacja regulatora PID w komputerze PC z kartą akwizycji danych Opracował na podstawie dokumentacji dr inż. Jarosław Tarnawski Akwizycja danych Zestaw czynności Pomiar Zamiana na sygnał cyfrowy Zapis

Bardziej szczegółowo

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: THREADS Mariusz Rudnicki 2016 1. Przygotowanie platformy i środowiska IDE. Przed uruchomieniem własnego kodu zwiększ priorytet procesu qconn

Bardziej szczegółowo

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino Interrupts Mariusz Rudnicki 2016 Wstęp W QNX Neutrino wszystkie przerwania sprzętowe przechwytywane są przez jądro systemu. Obsługę

Bardziej szczegółowo

Inżynieria Wytwarzania Systemów Wbudowanych

Inżynieria Wytwarzania Systemów Wbudowanych GUT Intel 2015/16 1/30 Inżynieria Wytwarzania Systemów Wbudowanych Wykład 3 Iwona Kochańska Katedra Systemów Elektroniki Morskiej WETI PG October 18, 2018 Dobre praktyki GUT Intel 2015/16 2/30 Przenośność

Bardziej szczegółowo

Pobieranie argumentów wiersza polecenia

Pobieranie argumentów wiersza polecenia Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:

Bardziej szczegółowo

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3 Modelowanie numeryczne w fizyce atmosfery Sylwester Arabas (ćwiczenia do wykładu dr. hab. inż. Lecha Łobockiego) Instytut Geofizyki, Wydział Fizyki Uniwersytetu Warszawskiego 3. listopada 2011 r. Schemat

Bardziej szczegółowo

Sieciowa komunikacja procesów - XDR i RPC

Sieciowa komunikacja procesów - XDR i RPC *** abc.x Przyklad pliku RPCGEN Obliczanie sumy, roznicy i iloczynu dwoch liczb calkowitych *** ************************************ Wywolanie procedury odleglej dopuszcza tylko jeden argument wywolania

Bardziej szczegółowo

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Wykład 12. Programowanie serwera MS SQL 2005 w C# Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych

Bardziej szczegółowo

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016 Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,

Bardziej szczegółowo

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)

Bardziej szczegółowo

Programowanie 2. Język C++. Wykład 1.

Programowanie 2. Język C++. Wykład 1. 1.1 Wstęp... 1 1.2 Obiekty stałe... 3 1.3 Obiekty statyczne... 4 1.4 Wskaźniki... 5 1.5 Referencje... 8 1.6 Wskaźniki do wskaźników... 11 1.7 Definiowanie własnych typów danych, polecenie typedef... 17

Bardziej szczegółowo

Programowanie Komputerów

Programowanie Komputerów Programowanie Komputerów Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Wykład 30 godzin, Laboratoria 30 godzin 2012/ Strona 1 z 28 1. Tablice w C# Indeksowane od zera

Bardziej szczegółowo

Installation of EuroCert software for qualified electronic signature

Installation of EuroCert software for qualified electronic signature Installation of EuroCert software for qualified electronic signature for Microsoft Windows systems Warsaw 28.08.2019 Content 1. Downloading and running the software for the e-signature... 3 a) Installer

Bardziej szczegółowo

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. Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą

Bardziej szczegółowo

Programowanie Proceduralne

Programowanie Proceduralne Programowanie Proceduralne Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 10 Co dziś będzie: Definiowanie struktury Deklarowanie zmiennych bȩda cych strukturami

Bardziej szczegółowo

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

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

Bardziej szczegółowo

I - Microsoft Visual Studio C++

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

Bardziej szczegółowo

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym

Bardziej szczegółowo

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak

Katedra Elektrotechniki Teoretycznej i Informatyki. wykład 12 - sem.iii. M. Czyżak Katedra Elektrotechniki Teoretycznej i Informatyki wykład 12 - sem.iii M. Czyżak Język C - preprocesor Preprocesor C i C++ (cpp) jest programem, który przetwarza tekst programu przed przekazaniem go kompilatorowi.

Bardziej szczegółowo

Obsługa plików. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 25 września 2011

Obsługa plików. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 25 września 2011 Obsługa plików Systemy Operacyjne 2 laboratorium Mateusz Hołenko 25 września 2011 Plan zajęć 1 Pliki w systemie Linux i-węzły deskryptory plików 2 Operacje na plikach otwieranie i zamykanie zapis i odczyt

Bardziej szczegółowo

Projektowanie klas c.d. Projektowanie klas przykład

Projektowanie klas c.d. Projektowanie klas przykład Projektowanie klas c.d. ogólne wskazówki dotyczące projektowania klas: o wyodrębnienie klasy odpowiedź na potrzeby życia (obsługa rozwiązania konkretnego problemu) o zwykle nie uda się utworzyć idealnej

Bardziej szczegółowo

Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 Zofia Kruczkiewicz

Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0  Zofia Kruczkiewicz Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 http://www.junit.org/ Zofia Kruczkiewicz 1. Aby utworzyć test dla jednej klasy, należy kliknąć prawym przyciskiem myszy w oknie Projects na wybraną

Bardziej szczegółowo

Multimedialne bazy danych - laboratorium

Multimedialne bazy danych - laboratorium Multimedialne bazy danych - laboratorium Oracle Multimedia (rozwiązania) Celem ćwiczenia jest zapoznanie się z obiektowymi typami danych Oracle dedykowanymi do obsługi multimediów. Autor ćwiczenia: Marek

Bardziej szczegółowo

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian 1 / 9 Content list / Spis Treści 1. Hardware and software requirements, preparing device to upgrade Wymagania sprzętowe i programowe, przygotowanie urządzenia do aktualizacji 2. Installing drivers and

Bardziej szczegółowo

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1 Typy złożone Struktury, pola bitowe i unie. Programowanie Proceduralne 1 Typy podstawowe Typy całkowite: char short int long Typy zmiennopozycyjne float double Modyfikatory : unsigned, signed Typ wskaźnikowy

Bardziej szczegółowo

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2 ( $%%) )'20 )*0) 1 / ) Jzyk C++ cz 3 Jarosław Gramacki Instytut Informatyki i Elektroniki # $$%%& ' ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )!" 2 # $$%%& ' ( $%%/,))3 ( %* 2 / 4 ( ( *' *''*,

Bardziej szczegółowo

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS) Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS) Temat: Budowa pętli sprzętowej (ang. Hardware In the Loop) w oparciu

Bardziej szczegółowo

Wprowadzenie do szablonów klas

Wprowadzenie do szablonów klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2008-2010 Bogdan Kreczmer Niniejszy

Bardziej szczegółowo

Microsoft IT Academy kurs programowania

Microsoft IT Academy kurs programowania Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego

Bardziej szczegółowo

How to share data from SQL database table to the OPC Server? Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT.

How to share data from SQL database table to the OPC Server? Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT. Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT How to share data from SQL database table to the OPC Server? ANT tutorial Krok 1: Uruchom ANT Studio i dodaj do drzewka konfiguracyjnego

Bardziej szczegółowo

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej Podstawy informatyki Informatyka stosowana - studia niestacjonarne Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie, rok

Bardziej szczegółowo

Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink

Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink Materiały pomocnicze do przedmiotu Systemy Czasu Rzeczywistego Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink Zawartość Czym jest Real-Time Windows Target (RTWT)?... 2 Bloki wejśd i wyjśd

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

Ćwiczenia 2 IBM DB2 Data Studio

Ćwiczenia 2 IBM DB2 Data Studio Ćwiczenia 2 IBM DB2 Data Studio Temat: Aplikacje w Data Studio 1. Projekty Tworzenie procedur, UDF, trygerów zaczynamy od utworzenia projektu File -> New -> Project wybieramy Data Development Project.

Bardziej szczegółowo

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. 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

Bardziej szczegółowo

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

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

Bardziej szczegółowo

Camspot 4.4 Camspot 4.5

Camspot 4.4 Camspot 4.5 User manual (addition) Dodatek do instrukcji obsługi Camspot 4.4 Camspot 4.5 1. WiFi configuration 2. Configuration of sending pictures to e-mail/ftp after motion detection 1. Konfiguracja WiFi 2. Konfiguracja

Bardziej szczegółowo

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych Laboratorium Programowania Kart Elektronicznych Programowanie BasicCard Marek Gosławski Przygotowanie do zajęć dokumentacja ZeitControl BasicCard środowisko programistyczne karta BasicCard Potrzebne wiadomości

Bardziej szczegółowo

Signals + Threads: Qt vs. Boost

Signals + Threads: Qt vs. Boost Signals + Threads: Qt vs. Boost Adam Bujalski 2014-04-01 Adam Bujalski Signals + Threads: Qt vs. Boost 2014-04-01 1 / 22 Spis Treści 1 2 Wątki 3 Qt::QueuedConnection w boost Adam Bujalski Signals + Threads:

Bardziej szczegółowo

Shared memory and messages. Functions. process 0. process 1. program 0. program 0. data 0. data 1. program 1. data 0. data 1.

Shared memory and messages. Functions. process 0. process 1. program 0. program 0. data 0. data 1. program 1. data 0. data 1. Shared memory and messages Shared memory vs message passing Shared memory - C functions Shared memory - example program Message queues - C functions Message queues - example program process 0 process 1

Bardziej szczegółowo

Configuring and Testing Your Network

Configuring and Testing Your Network Configuring and Testing Your Network Network Fundamentals Chapter 11 Version 4.0 1 Konfigurowanie i testowanie Twojej sieci Podstawy sieci Rozdział 11 Version 4.0 2 Objectives Define the role of the Internetwork

Bardziej szczegółowo

Obsługa wyjątków. Język C++ WW12

Obsługa wyjątków. Język C++ WW12 Obsługa wyjątków Pozwala zarządzać błędami wykonania w uporządkowany sposób. Umożliwia automatyczne wywołanie części kodu, funkcji, metod klas, który trzeba wykonać przy powstaniu błędów. try //blok try

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych

Bardziej szczegółowo

Wykład 9 2014-06-20 09:37 PP2_W9

Wykład 9 2014-06-20 09:37 PP2_W9 Wykład 9 Przykłady programów z wykorzystaniem klas - przykład funkcji operatorowych - obiektowa implementacja listy jednokierunkowej kopiowanie obiektów - klasa "latający napis" Pozycjonowanie w plikach

Bardziej szczegółowo

Uzupełnienie dot. przekazywania argumentów

Uzupełnienie dot. przekazywania argumentów Uzupełnienie dot. przekazywania argumentów #include #include struct nowa { int f; char line[20000]; int k; } reprezentant; int main() { void funkcja7( struct nowa x); reprezentant.k=17;

Bardziej szczegółowo

Instrukcja instalacji winbgim

Instrukcja instalacji winbgim Instrukcja instalacji winbgim 1. Przegląd instalacji Instalacja winbgim polega na przekopiowaniu w odpowiednie miejsca dwóch plików: pliku biblioteki, zawierającego m.in. skompilowane funkcje (libbgi.a),

Bardziej szczegółowo

Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje.

Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje. Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje. 1. W języku VHDL zdefiniowano mechanizm odczytywania i zapisywania danych z i do plików. Pliki te mogą być wykorzystywane

Bardziej szczegółowo

Laboratorium Systemów Operacyjnych. Ćwiczenie 4. Operacje na plikach

Laboratorium Systemów Operacyjnych. Ćwiczenie 4. Operacje na plikach Laboratorium Systemów Operacyjnych Ćwiczenie 4. Operacje na plikach Wykonanie operacji wymaga wskazania pliku, na którym operacja ma zostać wykonana. Plik w systemie LINUX identyfikowany jest przez nazwę,

Bardziej szczegółowo

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE Temat: Prosty serwis internetowy oparty o zestaw powiązanych

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 4

Oprogramowanie i wykorzystanie stacji roboczych. Wykład 4 Wykład 4 p. 1/1 Oprogramowanie i wykorzystanie stacji roboczych Wykład 4 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Obsługa sieci Wykład

Bardziej szczegółowo

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 4

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium cyfrowej techniki pomiarowej. Ćwiczenie 4 Politechnika Łódzka Instytut Systemów Inżynierii Elektrycznej Laboratorium cyfrowej techniki pomiarowej Ćwiczenie 4 Zapis danych do pliku w programie LabVIEW 1. Zapis i odczyt sygnałów pomiarowych Do zapisu

Bardziej szczegółowo

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

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

Bardziej szczegółowo

Wykład I. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład I. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład I - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Zaliczenie przedmiotu Do zaliczenia przedmiotu niezbędne jest

Bardziej szczegółowo

Programowanie w językach

Programowanie w językach Programowanie w językach wysokiego poziomu Obsługa plików za pomocą strumieni Elektronika i Telekomunikacja, semestr III rok akademicki 2013/2014 dr inż. Paweł Myszkowski Plan zajęć a) otwieranie i zamykanie

Bardziej szczegółowo

PROGRAMOWANIE w C prolog

PROGRAMOWANIE w C prolog PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014

Bardziej szczegółowo

Wykład. Materiały bazują częściowo na slajdach Marata Dukhana

Wykład. Materiały bazują częściowo na slajdach Marata Dukhana Wykład Materiały bazują częściowo na slajdach Marata Dukhana Języki programowania Kompilowane np. C, C++, Pascal Interpretowane np. JavaScript, PHP, Python, VBA Pośrednie np. Java, C# Znane kompilatory

Bardziej szczegółowo

Kontrola przebiegu programu

Kontrola przebiegu programu Kontrola przebiegu programu Wykład 9 Instrukcje sterujące: pętle rozgałęzienia skoki PRZYPOMINAJKA Zadanie : Zaprojektuj rekurencyjny przepis na wyznaczenie największej takiej liczby m, że 2 m jest podzielnikiem

Bardziej szczegółowo

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Ćwiczenia laboratoryjne. Oprogramowanie i badanie prostych metod sortowania w tablicach

Ć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ść

Bardziej szczegółowo

C++ wprowadzanie zmiennych

C++ wprowadzanie zmiennych C++ wprowadzanie zmiennych Każda zmienna musi być zadeklarowana, należy określić jej nazwę (identyfikator) oraz typ. Opis_typu lista zmiennych Dla każdej zmiennej rezerwowany jest fragment pamięci o określonym

Bardziej szczegółowo

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych Laboratorium Programowania Kart Elektronicznych Marek Gosławski Przygotowanie do zajęć dokumentacja ZeitControl BasicCard środowisko programistyczne karta BasicCard Potrzebne wiadomości język angielski

Bardziej szczegółowo

Materiały. Języki programowania II (Java+AVR-GCC) Literatura

Materiały. Języki programowania II (Java+AVR-GCC) Literatura Języki programowania II (Java+AVR-GCC) http://abm.p.lodz.pl dr inż. Michał Ludwicki Literatura Materiały Mikrokontrolery AVR Język C Podstawy programowania Mirosław Kardaś, Atnel, Szczecin, 2011. Specyfikacja

Bardziej szczegółowo

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C Grzegorz Cygan Wstęp do programowania mikrosterowników w języku C Mikrosterownik Inne nazwy: Microcontroler (z języka angielskiego) Ta nazwa jest powszechnie używana w Polsce. Mikrokomputer jednoukładowy

Bardziej szczegółowo

3-4. 5-7. 8-10. 11-12 15-18. 19-22

3-4. 5-7. 8-10. 11-12 15-18. 19-22 1. 2. 3-4. 5-7. 8-10. 11-12 13-14. 15-18. 19-22 23-28. 29-30. Programowanie strukturalne i obiektowe Typ wyliczeniowy, lista wyliczeniowa. Rzutowanie w C++. Wskaźniki i referencje. Działania na wskaźnikach.

Bardziej szczegółowo

Wstęp do programowania 1

Wstęp do programowania 1 Wstęp do programowania 1 Argumenty funkcji main Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Argumenty funkcji main dwa równoważne sposoby int main(int argc, char*

Bardziej szczegółowo

The Graphics View Framework. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. he Graphics View Framework - architektura

The Graphics View Framework. Oprogramowanie i wykorzystanie stacji roboczych. Wykład 5. he Graphics View Framework - architektura The Graphics View Framework Oprogramowanie i wykorzystanie stacji roboczych Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska The Graphics View

Bardziej szczegółowo

RS868v3 module configuration

RS868v3 module configuration RS868v3 module configuration Configuration procedure To enter the configuration mode insert a jumper onto the pins marked CONFIG (see: Pinout). After every issued command (besides device reset) the device

Bardziej szczegółowo

MeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty

MeetingHelper. Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania. Instrukcja obsługi dla programisty MeetingHelper Aplikacja Android ułatwiająca przekazywanie materiałów pomiędzy uczestnikami spotkania Instrukcja obsługi dla programisty W tej części został zawarty opis uruchamiania projektu programistycznego,

Bardziej szczegółowo

Lab 8. Tablice liczbowe cd,. Operacje macierzowo-wektorowe, memcpy, memmove, memset. Wyrażenie warunkowe.

Lab 8. Tablice liczbowe cd,. Operacje macierzowo-wektorowe, memcpy, memmove, memset. Wyrażenie warunkowe. Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 8. Tablice liczbowe cd,. Operacje macierzowo-wektorowe, memcpy, memmove, memset. Wyrażenie warunkowe. 1. Wektory i macierze: a. Przykład

Bardziej szczegółowo

Technologie cyfrowe semestr letni 2018/2019

Technologie cyfrowe semestr letni 2018/2019 Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Wykład 7 (08.04.2019) Wikipedia Programowanie komputerów proces projektowania, tworzenia, testowania i utrzymywania kodu źródłowego programów

Bardziej szczegółowo

imei CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Instytut Metrologii, Elektroniki i Informatyki

imei CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Instytut Metrologii, Elektroniki i Informatyki CYFROWE PRZETWARZANIE SYGNAŁÓW Laboratorium imei Instytut Metrologii, Elektroniki i Informatyki Temat: Tworzenie aplikacji w środowisku LabWindows/CVI Wprowadzenie Tworzenie nowej aplikacji w środowisku

Bardziej szczegółowo

Wprowadzenie do programowania i programowanie obiektowe

Wprowadzenie do programowania i programowanie obiektowe Wprowadzenie do programowania i programowanie obiektowe Wirtotechnologia Zajęcia nr 10 autor: Grzegorz Smyk Wydział Odlewnictwa Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza

Bardziej szczegółowo

1. Tworzenie nowego projektu.

1. Tworzenie nowego projektu. Załącznik do Instrukcji 1. Tworzenie nowego projektu. Wybieramy opcję z menu głównego New->QNX C Project. Wprowadzamy nazwę przechodzimy do następnego kroku NEXT. Wybieramy platformę docelową oraz warianty

Bardziej szczegółowo

Główne pytania. Sieci komputerowe Router sprzętowy WAN, LAN - CISCO Co to jest? Po co nam routing? Jak go zrealizować? Czy można lepiej?

Główne pytania. Sieci komputerowe Router sprzętowy WAN, LAN - CISCO Co to jest? Po co nam routing? Jak go zrealizować? Czy można lepiej? Główne pytania Sieci komputerowe Router sprzętowy dr inż. Piotr Kowalski Katedra Automatyki i Technik Informacyjnych Co to jest? Po co nam routing? Jak go zrealizować? Czy można lepiej? WAN, LAN - CISCO

Bardziej szczegółowo

SYSTEMY CZASU RZECZYWISTEGO (SCR)

SYSTEMY CZASU RZECZYWISTEGO (SCR) Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania SYSTEMY CZASU RZECZYWISTEGO (SCR) Temat: Implementacja i weryfikacja algorytmu sterowania z regulatorem

Bardziej szczegółowo

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino IPC native Mariusz Rudnicki 2016 Wstęp QNX Neutrino wspiera różnorodne mechanizmy komunikacji IPC: rodzima komunikacja QNX Neutrino

Bardziej szczegółowo

dynamiczny przydział pamięci calloc() memset() memcpy( ) (wskaźniki!! )

dynamiczny przydział pamięci calloc() memset() memcpy( ) (wskaźniki!! ) dynamiczny przydział pamięci malloc() free() realloc() calloc() memset() memcpy( ) mempcpy( ) memmove() (wskaźniki!! ) 1 dynamiczny przydział pamięci void * memccpy (void * to, void * from, int c, int

Bardziej szczegółowo

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. 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,

Bardziej szczegółowo

MS Visual Studio 2005 Team Suite - Performance Tool

MS Visual Studio 2005 Team Suite - Performance Tool MS Visual Studio 2005 Team Suite - Performance Tool przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A 15-351 Białystok Streszczenie: Dokument

Bardziej szczegółowo

DYNAMICZNE PRZYDZIELANIE PAMIECI

DYNAMICZNE PRZYDZIELANIE PAMIECI DYNAMICZNE PRZYDZIELANIE PAMIECI Pamięć komputera, dostępna dla programu, dzieli się na cztery obszary: kod programu, dane statyczne ( np. stałe i zmienne globalne programu), dane automatyczne zmienne

Bardziej szczegółowo

SQL 4 Structured Query Lenguage

SQL 4 Structured Query Lenguage Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...

Bardziej szczegółowo

Zdalne wywołania procedur. Jarosław Kuchta Programowanie Współbieżne

Zdalne wywołania procedur. Jarosław Kuchta Programowanie Współbieżne Zdalne wywołania procedur Jarosław Kuchta Programowanie Współbieżne Podstawy RPC Remote Procedure Call Wywołanie procedur jednego procesu z innego procesu. Proces wywoływany serwer Proces wywołujący -

Bardziej szczegółowo

Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza

Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza Laboratorium Projektowania Systemów VLSI-ASIC Katedra Elektroniki Akademia Górniczo-Hutnicza Projektowanie układów VLSI-ASIC za pomocą techniki komórek standardowych przy użyciu pakietu Cadence Programowanie,

Bardziej szczegółowo

Struktura programu. Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem.

Struktura programu. Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem. Struktura programu Projekty złożone składają się zwykłe z różnych plików. Zawartość każdego pliku programista wyznacza zgodnie z jego przeznaczeniem. W ostatnich latach najbardziej używanym stylem oprogramowania

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Przetwornik ADC laboratorium: 04 autor: mgr inż. Katarzyna Smelcerz Kraków, 2016

Bardziej szczegółowo

FUNKCJE WZORCOWE. Wykład 10. Programowanie Obiektowe (język C++) Funkcje wzorcowe wprowadzenie (2) Funkcje wzorcowe wprowadzenie (1)

FUNKCJE WZORCOWE. Wykład 10. Programowanie Obiektowe (język C++) Funkcje wzorcowe wprowadzenie (2) Funkcje wzorcowe wprowadzenie (1) Programowanie Obiektowe (język C++) Wykład 10. FUNKCJE WZORCOWE Funkcje wzorcowe wprowadzenie (1) Funkcje wzorcowe wprowadzenie (2) int max ( int a, int b ) return a>b? a : b; Aby mieć analogiczną funkcję

Bardziej szczegółowo

ECLIPSE wnioski z dwóch pierwszych laboratoriów

ECLIPSE wnioski z dwóch pierwszych laboratoriów PODSTAWY PROGRAMOWANIA 3-4 WYKŁAD 22-10-2015 ECLIPSE wnioski z dwóch pierwszych laboratoriów Dodanie pliku i konfiguracji startowej (każdy uruchamiany program powinien mieć własna konfigurację startową)

Bardziej szczegółowo

Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego

Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego Pliki w C/C++ Przykłady na podstawie materiałów dr T. Jeleniewskiego 1 /24 Pisanie pojedynczych znaków z klawiatury do pliku #include void main(void) { FILE *fptr; // wkaznik do pliku, tzw. uchwyt

Bardziej szczegółowo

Wirtualne przyrządy kontrolno-pomiarowe

Wirtualne przyrządy kontrolno-pomiarowe Katedra Mechaniki i Podstaw Konstrukcji Maszyn POLITECHNIKA OPOLSKA Wirtualne przyrządy kontrolno-pomiarowe dr inż.. Roland PAWLICZEK Laboratorium komputerowe Mechatroniki Cel zajęć ęć: Przyrząd pomiarowy:

Bardziej szczegółowo

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian 1 / 12 Content list / Spis Treści 1. Hardware and software requirements, preparing device to upgrade Wymagania sprzętowe i programowe, przygotowanie urządzenia do aktualizacji 2. Installing drivers needed

Bardziej szczegółowo

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Zajęcia nr 2 Programowanie strukturalne. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Zajęcia nr 2 Programowanie strukturalne dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej Pętla while #include using namespace std; int main ()

Bardziej szczegółowo

SYSTEMY CZASU RZECZYWISTEGO (SCR)

SYSTEMY CZASU RZECZYWISTEGO (SCR) Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania SYSTEMY CZASU RZECZYWISTEGO (SCR) Podstawy programowanie systemów wbudowanych na bazie platformy sprzętowo-programowej

Bardziej szczegółowo

4 bity zarezerwowane dla przyszłych zastosowań 11 bitów określających źródło błędu 16 bitów określających rodzaj błędu.

4 bity zarezerwowane dla przyszłych zastosowań 11 bitów określających źródło błędu 16 bitów określających rodzaj błędu. Zgłaszanie błędów HRESULT Każda metoda interfejsu COM zwraca informację o błędzie w postaci typu HRESULT (long int). Struktura reprezentacji bitowej HRESULT podzielona jest na 4 sekcje: 1 bit błędu 4 bity

Bardziej szczegółowo

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016 Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa

Bardziej szczegółowo

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian 1 / 8 Content list / Spis Treści 1. Hardware and software requirements, preparing device to upgrade Wymagania sprzętowe i programowe, przygotowanie urządzenia do aktualizacji 2. Installing drivers and

Bardziej szczegółowo

Wprowadzenie. Programowanie Obiektowe Mateusz Cicheński

Wprowadzenie. Programowanie Obiektowe Mateusz Cicheński Wprowadzenie Programowanie Obiektowe Mateusz Cicheński Paradygmaty programowania C++ Krótki przykład Kompilacja i linkowanie Makefile Przydatne flagi kompilatora Zaliczenie przedmiotu Harmonogram roku

Bardziej szczegółowo

Ekspert radzi. mechanizm w enova, umożliwiający wskazanie domyślnej drukarki dla danego stanowiska i wydruku. Strona 1 z 8. Ekspert radzi.

Ekspert radzi. mechanizm w enova, umożliwiający wskazanie domyślnej drukarki dla danego stanowiska i wydruku. Strona 1 z 8. Ekspert radzi. Ekspert radzi mechanizm w enova, umożliwiający wskazanie domyślnej drukarki dla danego stanowiska i wydruku. Strona 1 z 8 Spis treści 1. Zarys rozwiązania...3 1.2 Case study...3 1.3 Wymagania...3 2. Projekt...3

Bardziej szczegółowo