Rozwijam projekt, który ma wiele czujników sprzętowych łączących się z maszyną wdrożeniową przez porty szeregowe RS232.
Ale ... rozwijam się na komputerze bez fizycznych portów szeregowych RS232, ale chciałbym tworzyć fałszywe porty szeregowe, do których mogę się podłączyć i wyprowadzać dane w celu fałszowania danych wejściowych z czujników sprzętowych.
Czy ktoś zna sposób na stworzenie fałszywego portu szeregowego i sterowanie nim w systemie Windows XP?
windows
mocking
serial-port
hardware-interface
virtual-serial-port
Słuszne twierdzenie
źródło
źródło
Odpowiedzi:
Jeśli tworzysz dla systemu Windows, projekt com0com może być tym, czego szukasz.
Zapewnia pary wirtualnych portów COM, które są połączone przez połączenie nullmodem. Następnie możesz użyć ulubionej aplikacji terminalowej lub cokolwiek chcesz, aby wysłać dane do jednego portu COM i odebrać je z drugiego.
EDYTOWAĆ:
Jak zauważył Thomas , w projekcie brakuje podpisanego sterownika, co jest szczególnie problematyczne w niektórych wersjach systemu Windows (np. Windows 7 x64).
Istnieje kilka nieoficjalnych wersji com0com , które zawierają podpisany sterownik. Jedną najnowszą wersję (3.0.0.0) można pobrać np . Stąd .
źródło
com0com
projekt jest doskonałym projektem open source, ponieważ powinien zainstalować sterownik urządzenia bez podpisu cyfrowego, niektóre systemy Windows sprawdzające sterownik podpisany cyfrowo nie będą działać z jego wirtualnym portem szeregowym. Po prostu chcę, żeby ludzie wiedzieli.Wiem, że to stary post, ale na wypadek, gdyby ktoś inny spotkał się z tym pytaniem, jedną
dobrąopcją jest wirtualny emulator portu szeregowego (VSPE) firmy Eterlogic Zapewnia API do tworzenia wirtualnych urządzeń comport w trybie jądra, tj. Złącza, mappery, rozdzielacze itp. .jednak , niektóre z reklamowanych możliwości były naprawdę nie możliwości w ogóle .
EDYCJA
Znacznie lepszy wybór , Eltima . Ten produkt jest w pełni wypieczony. Dobre wsparcie techniczne dla programistów. Produkt zrobił wszystko, co chciał. Opcje produktów obejmują zarówno aplikacje komputerowe, jak i zestawy programistyczne z interfejsami API.
Żaden z tych produktów nie jest open source ani darmowy. Jednak, jak wskazały inne posty, istnieją inne opcje. Oto lista różnych narzędzi szeregowych:
com0com (current)
com0com - With Signed Driver (old version)
Kolejne miejsce dla com0com with Signed Driver (Pete's Blog)
Tactical Software
Termite
COM Port Serial Emulator
Kermit (przestarzałe, ale nadal do pobrania) Oprogramowanie
HWVSP3
HHD (edycja bezpłatna)
źródło
Używam com0com - With Signed Driver , na Windows 7 x64 do emulacji COM3 I COM4 jako pary.
Następnie używam emulatora COM Dataport do odbioru z COM4.
Następnie otwieram COM3 za pomocą aplikacji im Developping (C #) i wysyłam dane do COM3.
Dane przesyłane przez COM3 są odbierane przez COM4 i wyświetlane przez „emulator COM Dataport”, który może również odesłać odpowiedź (nie jest to automatyczne).
Dzięki tym 2 świetnym programom udało mi się emulować komunikację szeregową RS-232.
Mam nadzieję, że to pomoże.
Oba programy są darmowe !!!!!
źródło
Zawsze jest trasa sprzętowa. Kup dwa konwertery USB na szeregowe i podłącz je przez modem NULL.
Porady dla profesjonalistów: 1) Windows może przypisać nowe porty COM do adapterów po każdym uśpieniu lub ponownym uruchomieniu urządzenia. 2) Liderami na rynku chipów do połączenia szeregowego USB są Prolific i FTDI. Obie firmy walczą z podróbkami i mogą zostać zablokowane w przyszłych oficjalnych sterownikach systemu Windows. Jednak sterowniki Linuksa działają dobrze z klonami.
źródło
Inna alternatywa, mimo że PO o to nie prosił:
Istnieją adaptery USB na port szeregowy. W zależności od typu adaptera może być również potrzebny kabel nullmodem.
Są niezwykle łatwe w użyciu pod Linuksem, działają też pod Windows, jeśli masz zainstalowane działające sterowniki.
W ten sposób możesz pracować bezpośrednio z czujnikami i nie musisz próbować emulować danych. W ten sposób może nawet oszczędzisz sobie budowania anemicznego systemu. (Ze względu na to, że emulowane dane wejściowe nie obejmują wszystkich przypadków, co prowadzi do kruchego systemu).
Często lepiej jest pracować z prawdziwymi rzeczami.
źródło
screen /dev/ttyUSB0 9600
lub użyj,minicom
jeśli potrzebujesz oprogramowania do takiego sprzętu.Użyłem wirtualnego portu szeregowego eltima do debugowania aplikacji Modbus. jest to naprawdę bardzo dobra aplikacja na etapie rozwoju do sprawdzania programu portu szeregowego bez podłączania sprzętu.
źródło