USB reléová deska K8090

arduino, teensy, atmega, pic a jine (software, hardware)
Odpovědět
Uživatelský avatar
Krutor
Sponzor fora
Příspěvky: 995
Registrován: 2. 12. 2008, 8:58
Bydliště: Moravské Bránice
Kontaktovat uživatele:

26. 2. 2016, 8:25

Zdravím, koupil jsem tuto USB reléovou desku:
http://www.pselectronic.cz/k5503-260-k8 ... analu.html" onclick="window.open(this.href);return false;
Snažím se ji nainstalovat na Windows 98 SE, ale nedaří se. Pokud někdo tuto věcičku má a byl by ochoten zkusit ji pod Win98, budu rád za každou pomoc. Možná to chce je přepsat INF soubor, ale to nedokážu.
Jinak pod Windows XP to chodí, můžu jen doporučit. Už se mi podařilo to spínat i z mého C++ prográmku.
Pokud existuje podobná věc komunikující přes sériový port RS232, budu rád za každý tip (hledám hotové řešení, na bastlení nemám znalosti ani čas).
Petr Spáčil
Uživatelský avatar
pafik
Příspěvky: 2671
Registrován: 10. 2. 2013, 5:07
Bydliště: Praha 4

26. 2. 2016, 8:51

Pokud si dobře vzpomínám, W98 nemaj ještě nativní podporu USB. Takže budeš muset shánět drivery k té desce.
karelw
Příspěvky: 89
Registrován: 19. 11. 2010, 6:53
Bydliště: Napajedla

26. 2. 2016, 8:58

Ahoj,
s instalací na W98 neporadím.
Podobná deska s linkou se dá sehnat tady http://www.papouch.com/cz/shop/products ... ductPage=1
A nebo můžu nabídnout z vlastní produkce toto něco podobného. 8 galvanicky oddělených vstupů a 8 releových výstupů. Komunikace RS232, galvanicky oddělená RS485 nebo LAN. Během dvou týdnů bude vyrobena nová verze. Je tam pokročilejčí LAN chip, nadupanější procesor a dvě relé jsou nahrazeny většími. Obrázek se mi nepodařilo přiložit, tak je uložený tady:
http://ulozto.cz/xfxJ1z1f/rio-jpg
http://ulozto.cz/xj1piCi1/rio-dim-jpg
Naposledy upravil(a) karelw dne 26. 2. 2016, 10:55, celkem upraveno 1 x.
Uživatelský avatar
robokop
Site Admin
Příspěvky: 22371
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

26. 2. 2016, 9:06

posli i obrazek
to me pripadne taky zajima
Vsechna prava na chyby vyhrazena (E)
Uživatelský avatar
Krutor
Sponzor fora
Příspěvky: 995
Registrován: 2. 12. 2008, 8:58
Bydliště: Moravské Bránice
Kontaktovat uživatele:

26. 2. 2016, 11:28

Děkuji za rychlé reakce. Výrobce reléové karty velleman.be dodává driver, což je pouze tento INF soubor:

Kód: Vybrat vše

[Version] 
Signature="$Windows NT$" 
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} 
Provider=%MFGNAME% 
LayoutFile=layout.inf
CatalogFile=%MFGFILENAME%.cat
DriverVer=11/15/2007,5.1.2600.0

[Manufacturer] 
%MFGNAME%=DeviceList, NTamd64

[DestinationDirs] 
DefaultDestDir=12 

;------------------------------------------------------------------------------
;  Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------

[DriverInstall.nt] 
include=mdmcpq.inf
CopyFiles=DriverCopyFiles.nt
AddReg=DriverInstall.nt.AddReg 

[DriverCopyFiles.nt]
usbser.sys,,,0x20

[DriverInstall.nt.AddReg] 
HKR,,DevLoader,,*ntkern 
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys 
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" 

[DriverInstall.nt.Services] 
AddService=usbser, 0x00000002, DriverService.nt

[DriverService.nt] 
DisplayName=%SERVICE% 
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\%DRIVERFILENAME%.sys 

;------------------------------------------------------------------------------
;  Vista-64bit Sections
;------------------------------------------------------------------------------

[DriverInstall.NTamd64] 
include=mdmcpq.inf
CopyFiles=DriverCopyFiles.NTamd64
AddReg=DriverInstall.NTamd64.AddReg 

[DriverCopyFiles.NTamd64]
%DRIVERFILENAME%.sys,,,0x20

[DriverInstall.NTamd64.AddReg] 
HKR,,DevLoader,,*ntkern 
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys 
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" 

[DriverInstall.NTamd64.Services] 
AddService=usbser, 0x00000002, DriverService.NTamd64

[DriverService.NTamd64] 
DisplayName=%SERVICE% 
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\%DRIVERFILENAME%.sys 

[SourceDisksFiles]
[SourceDisksNames]
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_10CF&PID_8090

[DeviceList.NTamd64] 
%DESCRIPTION%=DriverInstall, USB\VID_10CF&PID_8090


;------------------------------------------------------------------------------
;  String Definitions
;------------------------------------------------------------------------------
;Modify these strings to customize your device
;------------------------------------------------------------------------------
[Strings]
MFGFILENAME="K8090"
DRIVERFILENAME ="usbser"
MFGNAME="Velleman Projects"
INSTDISK="Velleman Projects Installation Disc"
DESCRIPTION="K8090 8-Channel Relay Card"
SERVICE="K8090 8-Channel Relay Card Driver"
Na dotaz, zda mají i driver pro Windows 98, mi poslali takto upravený INF soubor, který ale W98 také nepřijaly:

Kód: Vybrat vše

[Version]
CatalogFile=usbcdc.cat
Signature=$CHICAGO$
Class=USB
Provider=%Company%
LayoutFile=layout.inf,layout1.inf,layout2.inf

[DestinationDirs]
DefaultDestDir=10
USB.Drvrs=10,SYSTEM32\DRIVERS
USB.VxD=11

[Manufacturer]
%Company%=Company
%MTK%=MTK

[MTK]
%Description%=DriverInstall,USB\VID_10CF&PID_8090

[DriverInstall]
CopyFiles=USB.Drvrs,USB.VxD
AddReg=DriverInstall.AddReg

[USB.Drvrs]
usbser.sys
ccport.sys

[USB.VxD]
wdmmdmld.vxd

[DriverInstall.AddReg]
HKR,,DevLoader,0,*ntkern
HKR,,NTMPDriver,,"usbser.sys,ccport.sys"

[DriverInstall.HW]
AddReg=MTKAddReg.HW

[MTKAddReg.HW]
HKR,,ChildID,2,"USB\DriverInstall"

[PreCopySection]
HKR,,NoSetupUI,,1

[Strings]
Company = "Velleman"
Description = "K8090 8-Channel Relay Card"
MTK = "Velleman nv"
Ale binárka k tomu žádná není. Jeden z problémů tuším třeba v tom, že ve Windows98 chybí odkazovaný soubor usbser.sys, jeho zkopírování z Windows XP byl naivní pokus :-) Už se pomalu smiřuju s tím, že to pod Win98 nerozběhnu, nechám to ležet nebo to prodám, a pořídím nějakou kartu pro sériový port. Na papouch.com jsem koukal, ale už se bojím všeho, kde není jasně deklarovaná podpora Win 9x. U RS232 je to asi jedno, ale to bych zase potřeboval nějaké knihovny nebo SDK, jinak se bojím, že tu komunikaci nezvládnu naprogramovat.

To karelw: Tvé RIO vypadá parádně, měl bych o to zájem, stačila by mi i ta starší verze. Máš k tomu nějakou dokumentaci nebo sample-code, abych to byl schopný ovládat ze svého C++ programu? Jaká je cena? Děkuji, zdravím.
Petr Spáčil
karelw
Příspěvky: 89
Registrován: 19. 11. 2010, 6:53
Bydliště: Napajedla

26. 2. 2016, 11:54

Dík.
Dokumentaci nemám. Komunikace je velmi jednoduchá. Deska se chová jako slave. Jen poslouchá a odpovídá na požadavky. Sama od sebe nic nepošle. Každý paket začíná 0x02 a končí 0x03. Všechno mezi začátkem a koncem je text. Numerická data se posílají také jako text, hexadecimálně. Např. 11 jako "0B" . Pro ovladání relé slouží 4 příkazy
'D' (Direct) pro nastavení všech relé do požadovaného stavu. Takže paket 0x02 "DF0" 0x03 sepne relé 5 až 8, relé 1 až 4 vypne
'R' (Reset) pro vypnutí relé vybranych maskou. Např. paket 0x02 "RC0" 0x03 vypne relé 7 a 8. Na stav ostatnich relé nemá vliv.
'S' (Set) pro sepnutí relé vybranych maskou. Např. paket 0x02 "S03" 0x03 sepne relé 1 a 2. Na stav ostatnich relé nemá vliv.
'T' (Timer) pro sepnutí relé vybranych maskou na zadanou dobu. Čas je N *100ms, další dva znaky za maskou Např. paket 0x02 "T180A" 0x03 sepnerelé 4 a 5 na jednu sekundu. Pak tyto rele vypne Na stav ostatnich relé nemá vliv.
Pak je tady paket 'I', který vrátí stav vstupů. A nějaké další paket pro zjištění stavu desky, vrácení verze fw,... Stejný formát komunikace je pro RS232 i 485. Po LANku se stejný formát posílá přes UDP
Uživatelský avatar
filla
Příspěvky: 3536
Registrován: 1. 12. 2013, 12:55
Bydliště: Brno
Kontaktovat uživatele:

26. 2. 2016, 12:48

pro w98 musis pridat podporu usb pnp, je to vykostene z ME, hlede na netu, nebo az budu doma, tak ti to muzu poslat, pripomen se do pm
"do řiti se řítíme, ani o tom nevíme.."
Uživatelský avatar
Krutor
Sponzor fora
Příspěvky: 995
Registrován: 2. 12. 2008, 8:58
Bydliště: Moravské Bránice
Kontaktovat uživatele:

27. 2. 2016, 10:11

karelw píše:Dík.
Dokumentaci nemám. Komunikace je velmi jednoduchá. Deska se chová jako slave. Jen poslouchá a odpovídá na požadavky. Sama od sebe nic nepošle. Každý paket začíná 0x02 a končí 0x03. Všechno mezi začátkem a koncem je text. Numerická data se posílají také jako text, hexadecimálně. Např. 11 jako "0B" . Pro ovladání relé slouží 4 příkazy
'D' (Direct) pro nastavení všech relé do požadovaného stavu. Takže paket 0x02 "DF0" 0x03 sepne relé 5 až 8, relé 1 až 4 vypne
'R' (Reset) pro vypnutí relé vybranych maskou. Např. paket 0x02 "RC0" 0x03 vypne relé 7 a 8. Na stav ostatnich relé nemá vliv.
'S' (Set) pro sepnutí relé vybranych maskou. Např. paket 0x02 "S03" 0x03 sepne relé 1 a 2. Na stav ostatnich relé nemá vliv.
'T' (Timer) pro sepnutí relé vybranych maskou na zadanou dobu. Čas je N *100ms, další dva znaky za maskou Např. paket 0x02 "T180A" 0x03 sepnerelé 4 a 5 na jednu sekundu. Pak tyto rele vypne Na stav ostatnich relé nemá vliv.
Pak je tady paket 'I', který vrátí stav vstupů. A nějaké další paket pro zjištění stavu desky, vrácení verze fw,... Stejný formát komunikace je pro RS232 i 485. Po LANku se stejný formát posílá přes UDP
Právě jsi tu dokumentaci napsal :D Já myslím, že kdyby sis udělal jednoduchý web, dal tam fotky, stručný popis, PDFko s popisem komunikace, a ideálně i zdroják v Céčku jak to rozhraní přesně funguje, tak máš dost objednávek. Ode mě určitě. Takhle si na to netroufnu, já potřebuju hotová řešení. Mně je skoro 40, mám 3 malé děti, nedodělanej barák, a tak na velké hraní fakt není čas.
Petr Spáčil
Uživatelský avatar
Krutor
Sponzor fora
Příspěvky: 995
Registrován: 2. 12. 2008, 8:58
Bydliště: Moravské Bránice
Kontaktovat uživatele:

27. 2. 2016, 10:19

filla píše:pro w98 musis pridat podporu usb pnp, je to vykostene z ME, hlede na netu, nebo az budu doma, tak ti to muzu poslat, pripomen se do pm
Díky, jakmile budu mít chvíli, vyzkouším.

Pafik mě dobře nasměroval s tou "nativní podporu USB", hledal jsem a našel jsem tohle:
http://www.winpack.org/search.php?rsvel ... l&rstema=4" onclick="window.open(this.href);return false;

Je to paráda, konečně mi pod Win98 fungují všechny flash-disky. Doufal jsem, že mi to vyřeší i můj problém s instalací K8090. Ale Win98 stále odmítají dotyčný INF soubor. Nejhorší je, že se nedozvím, co konkrétně se jim tam nelíbí. Nějaké log-sobory prý fungují až od W2000. Kdyby tu byl nějaký specialista na drivery, jsem ochoten klidně i zaplatit za odbornou pomoc.
Petr Spáčil
Uživatelský avatar
pafik
Příspěvky: 2671
Registrován: 10. 2. 2013, 5:07
Bydliště: Praha 4

27. 2. 2016, 12:39

V tom inf souboru je napsáno (kódem), pro jaký windowsy je. To je první, na co se pak při instalaci driveru windowsy podívaj a když se tam nenajdou, tak dál nejedou. W98 dávno nemám, takže se nedokážu podívat, jak jsou v těch infech značený. Maně si vzpomínám, že někde bylo třeba "chicago", ale jestli to značilo w95 nebo w98 nebo něco úplně jinýho, to už fakt nevím. Podívej se do inf souborů jakýchkoliv jiných zařízení, co ti tam choděj a hledej v nich něco takovýho. Editovat to musíš notepadem, ne wordpadem nebo něčím vyšším. Trocha intuice a logického myšlení. Originál si ulož a upravuj kopie. Když to uděláš blbě, na 99% se nic nestane (nic nezkazíš).
Uživatelský avatar
pafik
Příspěvky: 2671
Registrován: 10. 2. 2013, 5:07
Bydliště: Praha 4

27. 2. 2016, 5:00

Nemaje co dělat jsem se na ty infy mrknul a pak jsem se vrátil sem a teprve teď jsem zjistil, že tam to chicago v infu máš.
usbser.sys nemáš, zkus ho najít. Co ten druhej sys, ccněco? Z entýček tam nejspíš nepojedou, jsou jinak udělaný. Mohly by jet z milénií, snad.
Hledej šmudlo :-)
https://msdn.microsoft.com/en-us/librar ... 85%29.aspx" onclick="window.open(this.href);return false;
Uživatelský avatar
Krutor
Sponzor fora
Příspěvky: 995
Registrován: 2. 12. 2008, 8:58
Bydliště: Moravské Bránice
Kontaktovat uživatele:

29. 2. 2016, 11:36

Tak nakonec jsem problém s reléovou deskou pod Win 98 obešel tak, že jsem přešel na Win XP, kde funguje bez problémů, a naopak jsem po letech vyřešil problém s přímým přístupem na LPT (používám svůj vlastní software pro řízení krokových motorů, a protože neumím programovat v kernel-mode, byl jsem odkázán na maximálně Windows 98/ME). Teď jsem našel úžasně jednoduchou utilitku UserPort, která umožní odblokovat zákaz přímého přístupu na LPT a COM pod WinXP:

http://vyvoj.hw.cz/navrh-obvodu/softwar ... 000xp.html" onclick="window.open(this.href);return false;

Takže už nemám důvod držet se Windows 98, což bylo fakt sebemrskačství - jistě to znáte. Nic tam po připojení nefuguje samo od sebe, na všechno se musí hledat drivery, a to je v dnešní době obzvláště otravná a nebezpečná činnost. Na oficiálních stránkách skoro nic není, a na různých rádoby driver-sites je to samá nástraha, přetvářka a podvod. Driver stejně nestáhneš, ale nahotinek a jiných prasečin si nataháš do PC plno. Některá zákoutí dnešního internetu jsou fakt na zblití. Ale sorry, už jsem off-topic :-)
Petr Spáčil
Uživatelský avatar
pafik
Příspěvky: 2671
Registrován: 10. 2. 2013, 5:07
Bydliště: Praha 4

1. 3. 2016, 1:11

No vidíš, a svého času byly W98 bomba :D . Jen abychom na ně za pár let vděčně nevzpomínali s povzdechem "Jo, to byly windovsy, který mě nešpicovaly". Nebudu vyhazovat ty svoje instalační cédéčka s klíčema, ještě je časem výhodně prodám :D
Uživatelský avatar
elbarto
Příspěvky: 4861
Registrován: 22. 5. 2014, 10:27
Bydliště: Prague

1. 3. 2016, 2:31

Drzet W98 je opravdu vytrvalost. Osobne jsem zamrznuty v XP za neustaleho posmechu kolegu. Podobne relay desky radeji pouzivam s arduinem, tem je potom system fuck a hlavne je muzu ovladat SNMP prikazama z adnroid telefonu coz je opravdu pecka.
Odpovědět

Zpět na „MCU“