Strona 1 z 2

Sterowanie zasilaczem w LV

: 16 lis 2016 18:13
autor: spalinowy
Mam zasilacz, którym można sterować z kompa. Ma on złącza USB i RS232. Zainstalowały mi się jakieś sterowniki VISA i zupełnie nie wiem co dalej z tym zrobić.
Może mnie ktoś naprowadzić?

Sterowanie zasilaczem w LV

: 16 lis 2016 20:19
autor: aaddaas
Jakiś model?
Co chcesz osiągnąć?

Re: Sterowanie zasilaczem w LV

: 16 lis 2016 20:49
autor: spalinowy
Zasilacz to KD-3005P a chcę zwyczajnie sterować napięciem według zadanego przebiegu.

Re: Sterowanie zasilaczem w LV

: 16 lis 2016 21:44
autor: pawhan11
najprosciej to po RS komendy wysyłać, tylko trzeba jakas sensowna dokumentacje poszukać.
https://sigrok.org/wiki/Korad_KAxxxxP_series

Re: Sterowanie zasilaczem w LV

: 16 lis 2016 21:49
autor: spalinowy
Ok, mam pierwsze kroki za sobą.
Trzeba skorzystać ze ścieżki: Help -> Find Instruments Drivers...
Potem zainstalować sterownik i jest gotowy VI.

Re: Sterowanie zasilaczem w LV

: 20 lis 2016 00:46
autor: spalinowy
Pierwsze kroki za mną, jednak nadal coś jest nie tak. Chciałbym ten kod zrobić minimalistycznie, aby mógł pracować na cRIO przez RS232. Poza tym sterować chcę płynnie wartością napięcia, a nie tylko ustalać jakąś wartość co jakiś czas.
Zasilacz słychać, że się odzywa, ale wartości się nie zmieniają. Czego brakuje jeszcze w tym kodzie?

Gotowy kod i opis
Dokumentacja

Sterowanie zasilaczem w LV

: 20 lis 2016 11:35
autor: micard
Z czym konkretnie w tej chwili masz problem? Co rozumiesz jako
sterować chcę płynnie wartością napięcia, a nie tylko ustalać jakąś wartość co jakiś czas
Sterując urządzeniem przez port szeregowy zawsze ustalasz wartość "co jakiś czas" tylko czasem jest to 10 min a czasem 100ms

Sterowanie zasilaczem w LV

: 20 lis 2016 15:16
autor: spalinowy
Mam na myśli, że wartość ma być regulowana w miarę możliwości dynamicznie, a nie być ustawiona na 12 V i tak utrzymywana ciągle. Zdaję sobie sprawę ze zwłoki zadziałania układu, ale chcę ją ograniczyć do minimum na jakią pozwala sam zasilacz.

Sterowanie zasilaczem w LV

: 20 lis 2016 15:34
autor: aaddaas
No ok, a co się teraz dzieje? Bo ta pętla co ją wrzuciłeś co 200ms (timeout) ustala napięcie, prąd i włącza wyjście. Jest to zbyt mało płynnie? Jak często chcesz zmieniać napięcie?

Re: Sterowanie zasilaczem w LV

: 20 lis 2016 16:53
autor: spalinowy
Prace nad tym kodem chcę zrealizować tak:
1. Chcę dać na wyjście jakiekolwiek napięcie i prąd, jako Constant.
2. Jak to zadziała 1, to zamienię Constanty na Knoby.
3. Na koniec podłączę sobie jakąś funkcję zależną od czasu i podciągnę maksymalnie prędkość wykonywania pętli.

Jednak już w pierwszym punkcie mam problem. Zasilacz się odzywa, ale na wyświetlaczu nic się nie zmienia. I teraz nie wiem, czy w konfiguracji coś pomieszałem (teraz są ustawienia domyślne) czy w pętli brakuje jeszcze czegoś. Nie orientuję się za bardzo w tych wszystkich protokołach dlatego też nie wiem co jest niezbędne, aby komunikacja była poprawna.

Sterowanie zasilaczem w LV

: 20 lis 2016 17:42
autor: aaddaas
A soft Labview Korad KA3005P Software V0.1 z pierwszego linku co podałeś Ci działa? Widzisz urządzenie w managerze urządzeń?

Sterowanie zasilaczem w LV

: 20 lis 2016 18:15
autor: ksyhu
1. Czy wyjścia error zgłaszają jakieś błędy?
2. Czy IDN zwraca jakieś informacje? Może odczytaj coś czasem, a nie tylko wysyłaj.
3. Twój problem leży prawdopodobnie w tym, że wysyłasz nastawy z wartością dziesiętną rozdzieloną przecinkiem, a nie kropką (sprawdź wysyłany string i zmień ustawienia regionalne lub zamień znaki w LV)
4. Możesz użyć jednego format into string do polecenia, zamiast dwóch.
5. Nie wysyłaj IDN z każdym obrotem pętli (szkoda, czasu przetwarzania zasilacza, na to polecenie).

Re: Sterowanie zasilaczem w LV

: 20 lis 2016 20:05
autor: spalinowy
aaddaas pisze:A soft Labview Korad KA3005P Software V0.1 z pierwszego linku co podałeś Ci działa? Widzisz urządzenie w managerze urządzeń?
W sumie działa, ale powoduje czasami blue scren jak chcę zatrzymać VI. A sam zasilacz jest widoczny w managerze.
ksyhu pisze:1. Czy wyjścia error zgłaszają jakieś błędy?
2. Czy IDN zwraca jakieś informacje? Może odczytaj coś czasem, a nie tylko wysyłaj.
3. Twój problem leży prawdopodobnie w tym, że wysyłasz nastawy z wartością dziesiętną rozdzieloną przecinkiem, a nie kropką (sprawdź wysyłany string i zmień ustawienia regionalne lub zamień znaki w LV)
4. Możesz użyć jednego format into string do polecenia, zamiast dwóch.
5. Nie wysyłaj IDN z każdym obrotem pętli (szkoda, czasu przetwarzania zasilacza, na to polecenie).
1. Nic nie wyskakuje
2. Szczerze powiedziawszy nie pamięta, sprawdzę jutro.
3. Zastanawiałem się nad tym czy może to być problemem. Do tej pory w innych aplikacjach to nie przeszkadzało. Jednak z tym zasilaczem mam do czynienia zaledwie od paru dni.
4. Zmienię
5. Zmienię

Sterowanie zasilaczem w LV

: 24 lis 2016 13:17
autor: spalinowy
Kończąc w tym temacie, mogę napisać tyle, że zasilacz ten nie nadaje się do sterowania napięciem jako poprzez przebieg czasowy. W aplikacji trzeba uwzględniać za dużo Delay-ów, przez co opóźnienia na wyjściu są nieakceptowalne.

Re: Sterowanie zasilaczem w LV

: 24 lis 2016 16:21
autor: ksyhu
Czyli udalo się go wysterowac? Co było problemem. Ten typ komunikacji, nie jest najszybszy, zasilacz tez ma pewne opoznienia.

Jak jest możliwość, spróbuj przestawić się na sterowanie sygnalami analogowymi. Możesz też wkleić kod, zobaczymy czy nie da się go zoptymalizować. Czy zasilacz sterowany analogowo pokrętłem odpowiada wystarczajaco szybko?

Co do samego zasilacza. Z reguły dobiera się zasilacz, do zalozen projektowych, nie odwrotnie. Takze to że się nie nadaje do sterowania przebiegami to trochę za ostro powiedziane. W zaleznowsci od wymagan np 1sekundowa reakcja moze być wystarczajaca.