Witam.
Potrzebuję pomocy w temacie sterowania zewnętrznym przekaźnikiem poprzez np. USB.
Proszę o ogólny zarys rozwiązania problemu.
Witam.
Potrzebuję pomocy w temacie sterowania zewnętrznym przekaźnikiem poprzez np. USB.
Proszę o ogólny zarys rozwiązania problemu.
kpisz czy o drogę pytasz? Masz jakiekolwiek pojęcie o elektronice i programowaniu? Szukałeś czegoś sam? Masz już gotowe urządzenie?
ogólny zarys.. USB to transmisja szeregowa, nie można po prostu wpiąć przekaźnika w gniazdo USB - tak można za pomocą portu LPT. A co do pytania - najprościej zakupić układ FT232 który transkoduje transmisję USB na RS232 (i zainstalować do niego sterowniki w systemie). Potem taki układ podłączyć do dowolnego mikrokontrolera wyposażonego w UART i tam odbierać informacje wysyłane z programu, rozpoznawać konkretne polecenia mówiące: podaj napięcie na nóżkę X. A do nóżki X podpiąć przekaźnik, oczywiście nie bezpośrednio tylko przez jakiś wzmacniacz, bo kontroler nie daje na tyle prądu żeby przekaźnik zadziała.
Najłatwiej będzie z portem LPT, bo można niezależnie sterować poszczególnymi liniami. Podłączałem przekaźnik do LPT poprzez tranzystor, sterowało to urządzeniem 10W na 220V.
A co do pytania - najprościej zakupić układ FT232 który transkoduje transmisję USB na RS232 (i zainstalować do niego sterowniki w systemie).
Nie jestem autorem wątku ale czy jeśli zakupię moduł Bluetooth z interfejsem RS232 to rozumiem że też transkoduje on transmisję BT na RS232?
prawdopodobnie tak. ten układ FT232 ma napisane sterowniki w masie systemów udające wirtualny port COM. Podejrzewam ze podobnie jest z tym, ale nigdy nie próbowałem tego. Trzeba by szukać na elektrodzie.
w masie systemów
Mi akurat chodzi o Androida :]
hmm... raczej nie powinno być problemów, chociaż nie wiem jak od strony programowej wygląda przesyłanie przez BT
Sam dokładnie nie wiem - dopiero próbuję to rozgryźć. Motam się przy tych Btsocket i BtserverSocket. Znaczy z wysłaniem bajtów nie ma problemu tylko (testując na jakimś telefonie) ten owy telefon nie odpowiada na wysyłanie żadnym oknem dialogowym choć kontrolka miga na czewrono że niby coś leci i dlatego mam skuche :/
For example:
public static boolean sendData(String data){
socket = getBluetoothSocket(); // zwraca - return device.createRfcommSocketToServiceRecord(MY_UUID);
try {
socket.connect();
} catch (IOException e) {
socket = null;
}
if(socket != null){
try{
socket.getOutputStream().write(data.getBytes());
socket.close();
return true;
} catch (IOException e) {
socket = null;
return false;
}
}else{
return false;
}
}
Dzięki za mnóstwo podpowiedzi........ mam pytanko czy jak kupię standardowy adapter z USB na COM i odwrotnie to wystarczy ?? tzn czy wtedy mogę
napisać program dla obsługi portu COM a adapter załatwi w całości tą "translację" ?
Adam
tak, mozna taki adapter wykorzystać. Nie zapomnij tez, że trzeba po stronie mikrokontrolera napisać drugi program który będzie to odbierał.
......... tzn jest tak potrafię napisać - mam napisany kiedyś kiedy były w komputerach porty COM program do sterowania
poprzez ten port dwoma przekaźnikami i teraz potrzebuję to wykorzystać w PC "nowej generacji" gdzie są tylko USB........ więc czy to wystarczy czy
trzeba jeszcze coś oprogramować ???
Adam
hmm.... nie rozumiem ostatniej wypowiedzi, ale wygląda to tak: potrzebujesz 2 programów, jeden na kompie, w którym oprogramowujesz port COM (wirtualny - symulowany przez sterowniki adaptera USB-COM) i tym programem wysyłasz bajty na "drugą stronę". Po drugiej stronie jest mikrokontroler, który musisz tez oprogramować, żeby odpowiednio reagował na wysłane bajty. Na szybkiego polecam jakiegoś ATTiny albo ATmega i do tego szybkie oprogramowanie go w BASCOMie. Do tego jeszcze musisz mieć programator. Jak masz dostęp do kompa z LPT to programator składa się z 5 kabelków i 4 rezystorów, jak masz tylko USB to musisz kupić programator do tych procków na USB.
Jeżeli przesiadka USB/RS232 jest pełna, czyli oprócz RxD/TxD są jeszcze linie sterujące to potrzebny tylko wzmacniacz prądu - oporek, tranzystor i dioda z przekaźnikiem.
Trzeba rozważyć co się dzieje przy włączaniu wyłączaniu komputera.
Wersja z niezależnie zasilanym uC ma ten urok, że może pracować bez komputera.
Są niedrogie rozwiązania uC obywające się bez przejściówki:
*PIC
*MSP430
*Atmel CDC, HID
...