Problem z SCPI i GPIB

Wszelkie sprawy związane z LabVIEW i komunikacją ze sprzętem. Problemy i ciekawe rozwiązania.
roman
Posty: 16
Rejestracja: 08 lip 2004 00:00
Lokalizacja: Żary

Problem z SCPI i GPIB

Post autor: roman »

Mam problem typu wysterować skaner 32 kanałowy.
Fizycznie przełączanie odbywa sie tak:
np. chcę połączyć kanał 1z5
-wiec naciskam A i RÓWNOCZEŚNIE 1
-potem B i równocześnnie 5
lub
-naciskam B i RĂ“WNOCZEŚNIE 1
-potem A i równocześnnie 5
Mam 3 pomysły ale żaden nie działa

1
Urządzenie powinno dać się wysterować w SCPI standardowym poleceniem dla przełączników ROUTE( znaki końca to <CR><LF>)
tylko, że nie wiem jak przesłąć komende SCPI), szukałem przykładów ,ale te co znalazłem nie działały jak powinny, ( nie mogłem przetestować na innych poleceniach np IDN gdyż urządzenie jest tylko jako listener i nie ma wyświetlacza.
Czy ktoś ma jakieś sugestie lub działające przykłady???
2
Mam fragment kodu który podobno zadziała ale ale nie wiem jak zapisać polecenie WAIT
kod:
CMD "?U8","A01" //A01 powinno połączyć linię A1
WAIT 200
CMD "?U8","B15" //z linią B15

Przy okazji czy ktoś wie co znaczy "?U8"
Jak to zaimplementowac w labview?
3
Mam kod w postaci:
// Set Line B open
ibstop(0);
ibwrt (SCAN, "B00n", 4);
ibconfig (SCAN, IbcEOT, 0);
ibwrt (SCAN, "..n", 3);
Delay(.2);
który tez powinien działać.
I pewnieby działał gdyz udało mi sie wywołąć te funkcje z gpib-32.dll tyle
że nie widze tam polecenia Delay które jest niezbędne ( na to mi wygląda), gdyż to ono powoduje, że urządzenie widzi polecenia jako RĂ“WNOCZESNE a nie KOLEJNA naciśnięcie przycisków.
Jeśli ktoś ma jakieś pomysły lub sugestie z chęcią sie zapoznam.

Uffff i na tym kończe ten przydługi post ;)
PMaj
Posty: 231
Rejestracja: 04 sty 2004 00:00

Post autor: PMaj »

Witam

co do pytania pierwszego ... cóż ... udało mi się kiedyś wysłać komendę SCPI do miernika ... było to jakiś czas temu i owszem, trzeba było wprowadzać opóźnienie. robi się to w 'sequence strukture', piszesz pierwszą część kodu, potem w ramce wstawiasz jakiegoś waita, i w ramce trzeciej kolejną część kodu - to odpowiedź od razu na drugi punkt.

Jeżeli coś nie działa jak trzeba przy wysyłaniu komend SCPI to polecam sprawdzenie jakiej dokładnie składni oczekuje urządzenie. W moim przypadku urządzenie wymagało specjalnej ramki rozkazu - należy ją dopiero stworzyć. Urządzenia często potrafią być 'uśpione' - należy je najpierw 'obudzić' a następnie dopiero wysłać odpowiedni rozkaz, gdyż w przeciwnym przypadku mogą nie odpowiadać... wysłany bezpośrednio rozkaz spowoduje jedynie ustawienie w stan słuchania na przykład ale nie zostanie wykonany rozkaz - to taka sugestka, moze sie przydać (jako że miałem taki przykład właśnie)

Pozdrawiam
roman
Posty: 16
Rejestracja: 08 lip 2004 00:00
Lokalizacja: Żary

Post autor: roman »

Dzieki za sugestie , bede musial to wyprobowac swoja droga co do wait nie bylem pewien czy ustawia w taki stan urzadzenie czy tylko zatrzymuje wykonywanie programu na jakis czas, a co do wczesniejszego zaadresowania urzadzenia jako listener to chyba faktycznie nie jest to zly pomysl.
Jakbys znalazl jakis przyklad i mial sposobnos go podeslac podaje maila
roman103@o2.pl , w kazdym razie i tak dzieki, mam nadzieje ze masz racje , narazie
roman
Posty: 16
Rejestracja: 08 lip 2004 00:00
Lokalizacja: Żary

Post autor: roman »

Swoja droga jesli ktos wiek jak wyslac 2 polecenia SCPI tak zeby urzadzenie zinterpretowalo je jako rownoczesne wcisniecie przyciskow to fajnie by bylo, bo ja siedze nad tym i skurat cos mi nie idzia
ODPOWIEDZ