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 ;)
Problem z SCPI i GPIB
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
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
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
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