KOMUNIKACJA MIĘDZY KOMPUTEREM A PROCESOREM SYGNAŁOWYM Z ZASTOSOWANIEM PROTOKOŁU RTDX



Podobne dokumenty
EFEKTYWNE PROGRAMOWANIE PROCESORA TMS320C6711 PRZY UśYCIU PAKIETU SIMULINK

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

MODELING OF MEASURING SYSTEMS IN VEE PRO PROGRAMMING ENVIRONMENT WITH USE OF VIRTUAL INSTRUMENTS

Procesory Sygnałowe Digital Signal Processors. Elektrotechnika II Stopień Ogólnoakademicki

SYSTEM EIB W LABORATORIUM OŚWIETLENIA I INSTALACJI ELEKTRYCZNYCH

1.1. Wymogi bezpieczeństwa Pomoc techniczna TIA Portal V13 instalacja i konfiguracja pakietu...18

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano

2. Architektura mikrokontrolerów PIC16F8x... 13

Podstawy programowania sterowników SIMATIC S w języku LAD / Tomasz Gilewski. Legionowo, cop Spis treści

PUKP Programowanie urządzeń kontrolno-pomiarowych. ztc.wel.wat.edu.pl

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Opis systemu CitectFacilities. (nadrzędny system sterowania i kontroli procesu technologicznego)

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Zaliczenie przedmiotu:

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

WPROWADZENIE Mikrosterownik mikrokontrolery

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej Nr 19

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

ActiveXperts SMS Messaging Server

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

dokument DOK wersja 1.0

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

dr inż. Jarosław Forenc

Komputerowe systemy pomiarowe. Dr Zbigniew Kozioł - wykład Mgr Mariusz Woźny - laboratorium

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Laboratorium Komputerowe Systemy Pomiarowe

Badanie właściwości wysokorozdzielczych przetworników analogowo-cyfrowych w systemie programowalnym FPGA. Autor: Daniel Słowik

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

W RAMACH STUDIÓW NIESTACJONARNYCH NA KIERUNKU ELEKTROTECHNIKA NA WYDZIALE ELEKTRYCZNYM POLITECHNIKI WARSZAWSKIEJ

Laboratorium: Systemy operacyjne czasu rzeczywistego. Temat: Wprowadzenie do karty DS1102 i oprogramowania Control Desk.

Opracował: Jan Front

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

PRZEWODNIK PO PRZEDMIOCIE

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

PRZEWODNIK PO PRZEDMIOCIE

1.2. Architektura rdzenia ARM Cortex-M3...16

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Szkolenia specjalistyczne

Spis treści. Dzień 1. I Rozpoczęcie pracy ze sterownikiem (wersja 1707) II Bloki danych (wersja 1707) ZAAWANSOWANY TIA DLA S7-300/400

Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase

WYKORZYSTANIE NOWOCZESNYCH KAMER STANDARDU IEEE1394 DO DETEKCJI ZMIAN W OBSZARACH OBSERWACJI I BADAŃ W SYSTEMACH MACHINE VISION

Szybkie prototypowanie w projektowaniu mechatronicznym

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

Kurs SIMATIC S7-300/400 i TIA Portal - Zaawansowany. Spis treści. Dzień 1

asix4 Podręcznik użytkownika CAN_AC_PCI - drajwer protokołu CANBUS dla karty CAN_ACx_PCI Podręcznik użytkownika

SYSTEM MONITOROWANIA DECYZYJNEGO STANU OBIEKTÓW TECHNICZNYCH

Instytut Systemów Elektronicznych. Specjalność Systemy Informacyjno-Pomiarowe

To jeszcze prostsze, MMcc1100!

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH. PROCESORY OSADZONE kod kursu: ETD 7211 SEMESTR ZIMOWY 2017

asix4 Podręcznik użytkownika AS512 - drajwer protokołu AS512 dla SIMATIC S5 Podręcznik użytkownika

asix4 Podręcznik użytkownika SAPIS7 - drajwer protokołu SAPIS7 Podręcznik użytkownika

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

Projektowanie z użyciem procesora programowego Nios II

Sterowniki urządzeń zewnętrznych w pracy lokalnej i sieciowej w programach firmy InsERT dla Windows

INFORMATOR TECHNICZNY HORNER. Konfiguracja komunikacji GPRS pomiędzy sterownikiem XLe i oprogramowaniem Proficy HMI/SCADA Cimplicity

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

Aplikacje w środowisku VBA. Visual Basic for Aplications

Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń. Instrukcja do ćwiczenia nr 10. Transmisja szeregowa sieciami energetycznymi

Instrukcja programowania IRSC OPEN

PRZEWODNIK PO PRZEDMIOCIE

Architektura komputerów

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

NX70 PLC

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Opis efektów kształcenia dla modułu zajęć

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

1.Wstęp. 2.Generowanie systemu w EDK

Moduł konwertera RS-232/LON

Przejrzystość, intuicyjny charakter i łatwość oprogramowania sterowników FATEK.

Laboratorium Komputerowe Systemy Pomiarowe

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Przedmioty kierunkowe

2. Podstawy programu Microsoft Access

asix4 Podręcznik użytkownika CANOPEN drajwer protokołu CANBUS dla karty PCI_712 NT Podręcznik użytkownika

UWAGA. Wszystkie wyniki zapisywać na dysku Dane E: Program i przebieg ćwiczenia:

Tworzenie oprogramowania

Przemysłowe sieci informatyczne

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. Sieci i sterowniki przemysłowe

PROTOTYPOWANIE UKŁADÓW ELEKTRONICZNYCH Programowalne układy logiczne FPGA Maciej Rosół, Katedra Automatyki AGH,

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

Przemysłowe sieci informatyczne

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Technika mikroprocesorowa

Prototypowanie systemów sterowania

Wykorzystanie układów FPGA w implementacji systemów bezpieczeństwa sieciowego typu Firewall

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2012/2013

Transkrypt:

Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej Nr 19 XIII Seminarium ZASTOSOWANIE KOMPUTERÓW W NAUCE I TECHNICE 2003 Oddział Gdański PTETiS KOMUNIKACJA MIĘDZY KOMPUTEREM A PROCESOREM SYGNAŁOWYM Z ZASTOSOWANIEM PROTOKOŁU RTDX Grzegorz GRABOWSKI 1, Wojciech ŚLESZYŃSKI 2, Artur CICHOWSKI 3 Politechnika Gdańska, ul. G. Narutowicza 11/12, 80-952 Gdańsk, 1. tel. 347-25-34, fax: 341-08-80 e-mail: ggrab@ely.pg.gda.pl 2. tel. 347-25-34, fax: 341-08-80 e-mail: wslesz@ely.pg.gda.pl 3. tel. 347-25-48, fax: 341-08-80 e-mail: arcich@ely.pg.gda.pl W artykule opisano moŝliwości realizacji komunikacji między komputerem osobistym a procesorem sygnałowym TMS320C6711 firmy Texas Instruments. Scharakteryzowano własności karty uruchomieniowej ze zmiennoprzecinkowym procesorem sygnałowym TMS320C6711 pod kątem zastosowań dydaktyczno-naukowych. Przedstawiono przykłady praktycznych rozwiązań procedur komunikacyjnych, utworzonych w środowiskach programistycznych Visual C++ oraz LabView, w systemach cyfrowego przetwarzania sygnałów. Omówiono szerzej realizację komunikacji z wykorzystaniem protokołu RTDX (ang. Real Time Data Exchange). Opisano moŝliwości oprogramowania transmisji między komputerem PC a procesorem sygnałowym TMS320C6711 uŝywając bibliotek dołączanych dynamicznie (DLL), klasy obiektów lub gotowych elementów środowiska SIMULINK. Zaprezentowane rozwiązania są interesującym elementem, który mógłby zostać wykorzystany w ramach zajęć z cyfrowego przetwarzania sygnałów. 1. WPROWADZENIE Rozwój współczesnej techniki opartej na systemach mikroprocesorowych przyczynił się do powstania wielu róŝnorodnych układów dedykowanych do przetwarzania cyfrowego. Układy te charakteryzują się wieloma parametrami technicznymi takimi jak: szybkość przetwarzania, ilość dostępnej pamięci itd., jak równieŝ funkcjami dodatkowymi np. liczbą portów wejścia/wyjścia, dostępnymi funkcjami komunikacyjnymi. Do najwydajniejszych układów z tej dziedziny naleŝą procesory sygnałowe (skrótowo oznaczane DSP) dedykowane do cyfrowego przetwarzania sygnałów. Procesory te, oprócz podstawowych parametrów technicznych, o których wspomniano na wstępie, róŝni stopień trudności oprogramowania, zaleŝny od moŝliwości zastosowania konkretnego języka programistycznego i środowiska programowego dedykowanego dla danej grupy procesorów oraz wielkość nakładów pracy związanych z budową układów prototypowych. W celu uproszczenia programowania i budowy układu produkuje się karty z procesorami i innymi układami peryferyjnymi jak np. przetworniki analogowo-cyfrowe, realizującymi większość wymaganych przez projektanta funkcji. Jednym z takich rozwiązań jest karta DSK z procesorem zmiennoprzecinkowym TMS320C6711 firmy Texas Instruments. Karta

- 24 - ta ze względu na swoje bogactwo moŝliwości jak równieŝ przyjazne dla uŝytkownika oprogramowanie doskonale nadaje się do zastosowań naukowo dydaktycznych. Zawiera ona procesor TMS320C6711, którego najistotniejsze cechy przedstawiono poniŝej: 32 bitowe rejestry; moŝliwość wykonania 8 instrukcji w jednym cyklu zegarowym; częstotliwość taktowania 150MHz; dwa 32 bitowe zegary taktujące; dwa wielokanałowe buforowane porty szeregowe; 32 bitowy zewnętrzny interfejs pamięci; kontroler bezpośredniego dostępu do pamięci EDMA; 16 bitowy port HPI do komunikacji z komputerem sterującym. Dodatkowo karta DSK zawiera układy peryferyjne: przełączniki do zadawania określonych stanów logicznych na wejścia procesora, diody elektroluminescencyjne LED, kodek TLC320AD535 realizujący operacje przetwarzania A/D i D/A oraz interfejs JTAG. Produkt ten w stosunku do innych dodatkowo wyróŝnia przyjazne środowisko programistyczne Code Composer Studio, w którym, oprócz pisania kodu źródłowego i jego kompilacji, istnieje moŝliwość konfiguracji procesora i jego peryferii w sposób interaktywny, z uŝyciem okien dialogowych i wykorzystaniem techniki przeciągnij i upuść (z ang. drag & drop ). Kolejną zaletą opisywanego układu jest interfejs RTDX umoŝliwiający wymianę danych między procesorem sygnałowym a komputerem PC w czasie rzeczywistym. Dzięki temu programista ma moŝliwość obserwacji zmiennych programu, co w połączeniu ze stosunkowo prostym procesem tworzenia oprogramowania czyni opisywaną kartę wydajnym narzędziem w realizacji prototypu, bądź w zastosowaniach naukowych przy wszelkiego rodzaju badaniach, symulacjach itp. 2. INTERFEJS RTDX Interfejs RTDX (ang. real time data exchange ) dostarcza uŝytkownikowi moŝliwość wymiany danych i dzięki temu pozwala na ich obserwację w czasie działania programu. Transmisja między aplikacjami docelową uruchomioną na procesorze TMS i zewnętrzną komputera PC odbywa się w trybie on-line i nie powoduje przerw w działaniu programu. Sfera programowa interfejsu składa się z dwóch aplikacji: docelowej i sterującej uruchomionej na komputerze PC, działającej w połączeniu z Code Composer Studio. Code Composer Studio Program komputera PC tzw. klient Biblioteka RTDX Biblioteka RTDX Aplikacja procesora sygnałowego Komputer PC opcjonalnie zapis do pliku Środowisko procesora sygnałowego Rys. 1. Schemat procesu komunikacji Programem klientem moŝe być aplikacja standardowych pakietów takich jak: National Instruments LabVIEW, Quinn-Curtis Real-Time Graphics Tools, MATLAB, Microsoft

- 25 - Excel. Dodatkowo moŝna tworzyć własne aplikacje w środowiskach programistycznych Visual C++ oraz Visual Basic, dla których zostały przygotowane właściwe biblioteki. Dzięki temu pozostawia się programiście duŝe moŝliwości rozbudowy własnych aplikacji. Interfejs RTDX jest doskonałym narzędziem do rozmaitych zastosowań związanych z kontrolą określonych parametrów, bądź ich zadawaniem. MoŜe okazać się bardzo przydatny w układach sterowania, umoŝliwiając uŝytkownikowi podgląd bieŝących wartości systemu, ich zadawanie lub rozdzielenie realizowanego programu na kilka części uruchomionych na oddzielnych platformach i komunikujących się przy pomocy interfejsu RTDX, co wpływa istotnie na wydajność systemu. Pozwala on takŝe na budowę przyjaznych aplikacji panelów operatorsko-pomiarowych uruchamianych na komputerze PC monitorujących pracę systemu. Szybkość transmisji danych przy uŝyciu interfejsu RTDX dla procesora TMS320C6711 wynosi 20 50 kilobajtów na sekundę. Dane transmitowane są poprzez tzw. kanały, które wymagają wcześniejszej deklaracji. W zaleŝności od kierunku transmisji danych deklarowane są kanały wejściowe (do odbioru) bądź wyjściowe (do wysyłania). Strumień danych wysyłany (bądź odbierany) z procesora sygnałowego jest odpowiednio formatowany przy uŝyciu biblioteki RTDX Target Library, w której umieszczone zostały wszelkie procedury związane z deklaracją kanałów transmisyjnych, monitoringiem i transmisją danych. Dane transmitowane są pomiędzy systemami przy uŝyciu interfejsu JTAG. Aplikacja kliencka uczestniczy w procesie wymiany danych z wykorzystaniem środowiska Code Composer Studio, umoŝliwiającego aktywację poszczególnych kanałów transmisyjnych, ich dodawanie, zapis transmitowanych danych do pliku i szereg innych działań konfiguracyjnych. Podstawowe funkcje obsługi RTDX dostarczone przez producenta w formie biblioteki DLL scharakteryzwano skrótowo poniŝej: Enable/DisableChannel ( nazwa kanału RTDX ) aktywacja kanału o podanej nazwie; channel.open ( nazwa kanału RTDX, R/W ) otworzenie kanału przepływu danych do odczytu bądŝ zapisu (w zaleŝności od znacznika R/W); channel.readi1/i2/i4/f4/f8 (data) odczyt pojedynczej danej i umieszczenie jej pod zmiennąo nazwie data; channel.readsai1/i2/i4/f4/f8 (data_array) odczyt tablicy danych i umieszczenie jej pod adresem zmiennej tablicowej o nazwie data_array channel.writei1/i2/i4/f4/f8 (datum, num_bytes_in_rtdx_dll_buffer) zapis zmiennej do bufora i wysłanie przez kanał RTDX; channel.write (data_array, num_bytes_in_rtdx_dll_buffer) instrukcja słuŝąca do transmisji zmiennej tablicowej; channel.close () zamykanie kanału RTDX. WyŜej przedstawione funkcje nie wyczerpują wszystkich moŝliwości wykorzystania narzędzia programistycznego RTDX, a jedynie przedstawiają podstawowe operacje moŝliwe do zastosowania. Pominięto tu głównie funkcje inicjalizacji sterownika, których wywołanie jest niezbędne do prawidłowego działania. 3. OPIS KLASY RTDX Proces oprogramowania komputera PC z uŝyciem biblioteki RTDX, mimo przygotowanych przez producenta funkcji, moŝe sprawiać problemy przy większych projektach, gdyŝ wymaga zastosowania odpowiednich funkcji wywołanych we właściwej kolejności. Własność ta staje się przyczyną wielu błędów i powoduje wydłuŝenie procesu

- 26 - programowania. Wymaga ono od programisty dokładnej znajomości kaŝdej z funkcji biblioteki RTDX i umieszczania w wymaganej kolejności. W celu eliminacji niedogodności związanej z programowaniem w sposób strukturalny w ramach badań utworzono klasę obiektu RTDX, której funkcje publiczne wywołują automatycznie odpowiednie procedury. Klasa ta obsługuje zarówno proces odbioru danych, jak i ich wysyłania. Utworzona klasa RTDX składa się z konstruktora klasy, którego wywołanie wymaga podania typu tworzonego kanału, gdyŝ w zaleŝności od tego uruchamiane są odpowiednie funkcje jego inicjalizacji. Dostępne rodzaje kanałów to: o ArrayRead kanał odczytu tablicy zmiennych; o ArrayWrite - kanał zapisu tablicy zmiennych; o ValueRead - kanał odczytu pojedynczej zmiennej; o ValueWrite - kanał zapisu pojedynczej zmiennej. KaŜde wywołanie konstruktora powoduje zwiększenie zmiennej statycznej klasy m_numchannel będącej licznikiem obiektów klasy. Zmienna ta jest wykorzystywana do kontroli ilości obiektów w celu uruchomienia funkcji inicjalizacji interfejsu RTDX, które powinno być dokonane jednorazowo przed wykorzystaniem kanałów komunikacyjnych. Kolejną funkcją klasy o dostępie publicznym jest funkcja openchannel, która zawiera wszystkie potrzebne dla danego kanału procedury inicjalizacji. Przeciwieństwem tej funkcji jest procedura zamykania kanałów CloseChannel, w której zgrupowano funkcje zwalniające pamięć zajmowaną przez obiekt klasy. Wysyłania zmiennych bądź ich odbioru dokonuje się poprzez wywołanie odpowiednich funkcji składowych: writearray jej wywołanie wymaga podania tablicy i ilości wysyłanych elementów; readarray argumentem jest tablica, w której zostaną umieszczone odczytane dane; readvalue funkcja odczytu pojedynczej danej, wymagająca podania zmiennej, w której umieszczona zostanie odczytana wartość; writevalue - funkcja wysyłania pojedynczej zmiennej, będącego argumentem. Wywołania tych funkcji zostały zabezpieczone przed nieprawidłowym uŝyciem Ŝądaniem wysłania zmiennej określonego typu przez kanał, który nie jest do tego celu dedykowany. Wszystkie funkcje słuŝące transmisji danych zostały przeciąŝone, dzięki czemu ich zastosowanie powoduje wywołanie procedur dopasowanych do formatu jej argumentów. Destruktor klasy RTDX ( ~RTDX() ) składa się z funkcji zmniejszającej licznik obiektów klasy oraz funkcji powodującej deaktywację interfejsu RTDX, która wywołana jest tylko w przypadku zamknięcia wszystkich kanałów RTDX. Wywoływany jest on automatycznie i kaŝdorazowo, gdy program wychodzi poza zasięg danego obiektu. Wykorzystanie klasy powoduje zmniejszenie nakładów pracy związanej z programowaniem, które dzięki niej staje się bardziej intuicyjne (ze względu na ilość funkcji i ich nazewnictwo). Utworzoną klasę RTDX wykorzystano do oprogramowania procesu komunikacji między procesorem sygnałowym zintegrowanym z kartą DSK a aplikacją kliencką komputera PC. 4. INTERFEJS RTDX W ŚRODOWISKU SIMULINK Interfejs RTDX, przeznaczony jest do wielu środowisk między innymi równieŝ do pakietu SIMULINK środowiska MATLAB. SIMULINK jest podprogramem MATLAB a dedykowanym do symulacji, w którym wszystkie realizowane funkcje zawarte są w odpowiednich blokach reprezentujących określoną funkcję. Tak jest takŝe w przypadku procedur komunikacyjnych interfejsu RTDX, tzn. są dwa bloki, z których jeden słuŝy do

- 27 - wysyłania danych ( To RTDX ), a drugi do ich odbioru ( From RTDX ). Dodatkową zaletą wykorzystania środowiska SIMULINK jest moŝliwość generacji kodu źródłowego programu procesora sygnałowego TMS320C6711. Dzięki temu mamy moŝliwość tworzenia programów na procesory firmy Texas Instruments bez znajomości języka C++, a jedynie przy minimum wiedzy niezbędnym do obsługi środowiska SIMULINK. Dodatkowo SIMULINK pozwala na szybkie tworzenie wykresów i okien dialogowych umoŝliwiających obserwację zmiennych odbieranych z kanałów RTDX. Rys. 2. Widok przykładowego schematu symulacyjnego SIMULINK realizacja efektu echa i transmisja próbek we/wy przez interfejs RTDX. Przedstawione moŝliwości pakietu SIMULINK świadczą o jego duŝej uŝyteczności w zastosowaniach dydaktycznych szczególnie w ramach zajęć z zakresu cyfrowego przetwarzania sygnałów. Dodatkowo dzięki moŝliwości generacji kodu na procesor sygnałowy, działania z zakresu symulacji osiągają wymiar praktyczny, a sam proces tworzenia schematu symulacyjnego moŝna uznać za pewnego rodzaju sposób programowania (podobnie jak w przypadku środowiska LabVIEW). 5. WYKORZYSTANIE INTERFEJSU RTDX W ŚRODOWISKU LABVIEW Protokół RTDX wykorzystano do realizacji komunikacji pomiędzy komputerem, a procesorem sygnałowym w laboratoryjnym układzie napędowym. Składa się on z silnika indukcyjnego o mocy do 2,2kW obciąŝonego prądnicą prądu stałego oraz przemiennika częstotliwości sterowanego przy pomocy procesora sygnałowego TMS320C6711 i układu programowalnego ALTERA serii ACEX 1K. Do sterowania falownikiem opracowano dwa róŝne panele operatora, które korzystają z tych samych funkcji komunikacyjnych. Oba panele wykonano w środowisku programowania LabVIEW, ze względu na duŝą bibliotekę gotowych przyrządów pomiarowych oraz łatwość tworzenia interfejsów uŝytkownika o wysokich walorach estetycznych. Panel operatorski wykorzystywany do diagnostyki uszkodzeń tranzystorów falownika napięcia umoŝliwia sterowanie pracą falownika napięcia, zadawanie podstawowych parametrów modulacji takich jak: współczynnik głębokości modulacji, szybkość jego zmian, częstotliwość modulacji, itp. Pozwala na przerywanie sygnałów bramkowych poszczególnych tranzystorów i wyświetla wyniki diagnostyki.w celu realizacji komunikacji w programie LabVIEW wykorzystano funkcję Call Library Function umoŝliwiającą wywoływanie funkcji ze standardowych bądź stworzonych przez uŝytkownika bibliotek [5]. W tym wypadku w środowisku Visual C++ utworzono własną bibliotekę dołączaną dynamicznie rtdx_pr.dll, wykorzystując wspomnianą wcześniej bibliotekę rtdxint.dll. Utworzona biblioteka zawiera następujące

- 28 - funkcje: deklaracja kanału RTDX, otwarcie i zamknięcie kanału do odczytu bądź zapisu, odczyt i zapis zmiennej całkowitej lub rzeczywistej oraz zwolnienie kanału RTDX. 6. WNIOSKI KOŃCOWE Zmiennoprzecinkowy procesor sygnałowy TMS320C6711 oferuje duŝe moŝliwości obliczeniowe oraz jest programowalny przy uŝyciu języków wysokiego poziomu. Dzięki temu w stosunkowo prosty sposób i szybko moŝna zaimplementować dość złoŝone algorytmy cyfrowe. Opracowane funkcje komunikacyjne umoŝliwiają szybkie tworzenie własnych aplikacji do sterowania procesorem sygnałowym w przypadku wykorzystania środowisk programowania Quinn-Curtis Real-Time Graphics Tools oraz LabVIEW. RównieŜ moŝliwości pakietu SIMULINK świadczą o jego duŝej uŝyteczności w zastosowaniach dydaktycznych, szczególnie w ramach zajęć z zakresu cyfrowego przetwarzania sygnałów. Dzięki moŝliwości generacji kodu procesora sygnałowego, symulacje komputerowe przeprowadzane w tym programie moŝna w prosty sposób skonfrontować z rzeczywistością, a sam proces tworzenia schematu symulacyjnego moŝna uznać za pewnego rodzaju programowanie. 7. BIBLIOGRAFIA 1. TMS320C6000 Code Composer Studio Help, Texas Instruments 2000; 2. TMS320C6000 Peripherals Reference Guide, Texas Instruments 2001; 3. Visual C++ 6.0 dla kaŝdego, Davis Chapman, wyd. Helion, W-wa 1999; 4. Visual C++ 6. Vademecum profesjonalisty, Richard C. Leinecker, Tom Archer, wyd. Helion, W-wa 2000; 5. Using external code in LabVIEW, National Instruments 2000. COMMUNICATION BETWEEN PERSONAL COMPUTER AND DIGITAL SIGNAL PROCESSOR USING RTDX PROTOCOL In this paper the implementation of communication method between personal computer (PC) and digital signal processor (DSP) TMS320C6711 from Texas Instruments is presented. Properties of development starter kit (DSK) and on board floating point DSP TMS320C6711 are characterized regarding their applications for educational and scientific purposes. It contains examples of practical communication procedures solutions, created in programming environments such as MS Visual C++ and LabView in the digital signal processing systems. The use of the RTDX protocol for communication implementation is deeply covered, as well as the possibilities of implementing the transmission between the PC and the TMS320C6711 digital signal processor. The transmission is programmed using dynamic link libraries (DLL), custom classes or common SIMULINK components. The solutions presented above can be very useful during lectures or other teaching activities on digital signal processing.