Digitális jelek feldolgozása USB porton keresztül

Fórumok

Sziasztok!

Szeretnék egy olyan programot írni, ami egy két digitális jel pl. egy optikai érzékelő jelét valamilyen hardver eszköz beiktatásával továbbítaná az USB portra, és a jeleket egy java programban dolgoznám fel.

Egyéb információk:
-Egyenlőre nincs szó arról, hogy a számítógépet digitális kimenetek működtetésére is alkalmassá kellene tenni. Tehát csak a digitális bemenetek eljuttatása érdekel a java-hoz.
- Fontos lenne számomra, hogy ajánljatok eszközöket, amivel megoldhatom a problémát. (Tényleg csak 1-2 digitális bemenetről lenne szó. Tehát max. 2.)
- Fontos lenne azt is megtudni, hogyan fogom az USB-n keresztül a jelet (jeleket) megkapni a java-ban.

Hozzászólások

en azt hiszem serial <-> USB konverterrel kezdenek (pl cp2102), annak is a vezerlo jeleivel (DSR, CTS, RI). ha komolyabba valik a project, akkor feltehetsz valamilyen PIC-et (16F628A, 18F452: ezeken van sok I/O lab, + egyszeru ADC, timer/counter, stb), amivel aztan ugyanezen a konverteren keresztul kommunikalhatsz.

java-bol soros portkent latod majd az eszkozt, es pl

javax.comm

-on keresztul erheted el (bar a java-hoz nem ertek).

ha a hardware tervezes/epites esetleg problema lenne, akkor keszen vehetesz ilyesmi eval kit-eket.

Szia mazsi!

A te ötleted tűnik a leginkább költségtakarékos módszernek, mert egy viszonylag olcsó tömegtermékkel oldanád meg. Feltételezem, minden számtech boltban lehet ma már USB - soros port átalakítót kapni.

Nem tudod véletlenül, hány Volt feszültséget lehet rákapcsolni egy soros port valamely bemeneti pontjára?

Találtam egy jó kis DLL fájlt, aminek a segítségével egyenként le lehet kérdezni a CD, CTS, DSR, RI bemenetek állapotát:
http://www.zetnet.co.uk/rad/vb3.html
"COM Port Status" nevű programocska az adott oldalon. Ezzel már elboldogulok Visual Basic-ben. A Readme.txt fájlban pontosan megadják, hogyan kell deklarálni a szükséges függvényeket.

Találtam a feszültségszintekre vonatkozó leírást: http://en.wikipedia.org/wiki/RS-232#Voltage_levels

Elvileg +-15 V lehetséges. A -3V-nál kisebb érték esetén logikai "1" az érték, a +3V nagyobb érték estén pedig logikai "0".

Már csak az a kérdés, hogy egy laptop esetén mégis mekkora maximális feszültségszintek engedhetők meg?

Ha egy 12V-os tápegység feszültségét megosztom +-6 V-ra, akkor azzal már valószínűleg nem teszem tönkre a soros portot.
A következőképpen gondolom megvalósítani: Két egyforma sorosan kötött ellenállással terhelem a 12V-os tápegységet, és a középpontját rávezetem a soros port GND kapcsára. A szenzort szintén ugyanarról a 12V-ról üzemeltetném. Így annak kimenete +-6V lenne a GND-hez képest.

Feltételezem, bármilyen hiba esetén csak a soros port menne tönkre, a laptop USB portja nem.

upsz, megette az elozo postom a ff.
de leirom megegyszer.
olcso megoldas ha szeretsz barkacsolni az ftdi chip (mi is ezt hasznaljuk) a 232r-nek van cbus fedoneven direktbe elerheto port laba.
http://ftdichip.com/Products/FT232R.htm

ha kevesbe vagy forasztgatos akkor lehet a gyari soros atalakiton is huzgalni a vezerlo labakat, de egyszerubb akkor az usb/centronics atalakito. arban ugyan ott van es ott 5v-os jelszintekkel tudsz dolgozni.

mgb

igen, ezek a hivatalos szintek, de a jelszint illeszto ic (tipikusan MAX232), ami a soros porton erkezo jeleket
fogadja ennel "jobb" szokott lenne: altalaban +0.8..+2.0V a hatarozatlan tartomany, az alatt logikai alacsonynak,
a felett logikai magasnak latja a jelet. a max bementi feszultseg meg +-30V szokott lenni.

tehat a 0V/12V jelszintet gond nelkul fogadja, es valoszinuleg feszultsegosztas nelkul is menni fog.
azert nezd majd meg a konkret ic adatlapjat.

Szerintem a szabvány itt csak azt a tartományt adja meg amit tudnia kell az illesztő IC-nek. Az hogy
az IC ennél bővebb tartományt enged, nem kell hogy zavarjon. Ha betartod a szabványos jelszintet, tutira
menni fog, ha meg kihasznalod, hogy a te illesztod +-30Vig birja, és olyan interfészt építesz ki ami +-30
V-on küldi a jeleket, majd kesőbb rateszel egy masik kutyut, amiben mas IC van akkor az lehet szétfüstöl.

Olyen ez mint OOP-ben az interfész :).

Nem egészen!

A mazsi által emlegetett IC nem kiterjesztése a szabványnak, hanem tökéletesen a szabvány ellen dolgozik. A nevezett IC a 0V-ot logikai alacsony szintnek ad meg, míg a +2V felett logikai magas szintnek.

Ez két okból is szabványellenes:
1, A szabvány szerint a +3V feletti feszültség a logikai alacsony szint.
2, A szabvány tiltja a -3V...+3V közzé eső feszültségeket. Feltételezem azon szándékból, hogy szakadás esetén azonnal érzékelni lehessen a hibát.

Szia, mgb!

Nekem is tetszik az emodule. Tökéletes. A mi igényeinkhez igazodik input/output tekintetében.

Kérdéseim:
1, Lehet-e programozni EXCEL VB makróban is? A barátomnak Windows van és EXCEL. (Persze ha nem, akkor még mindig ott a Java, mint lehetőség.)
2, Tudsz-e abban is segíteni? (Segítség csak az adatok kiolvasásához kell, a többit megoldjuk.)
3, Külső tápegységet tudtok-e hozzá adni? (Mennyiért?)
4, Van-e hozzá valamiféle tokozás?

szia

1. fogalmam sincs, 3 soros for each-nal tobbet meg nem csinaltam excel vb makroban. de ha lehet parancs sort futtatni akkor van hozza kis programunk amivel hasznalhato. Holnap kiprobalom!
2. persze segitunk, ugyis szeretnenk szoftver peldakkal feltolteni a lapot legalab irunk egykettot.
3. igen tudunk adni tapot. kerdes mihez kell mekora arameroseg... 700Ft-tol a csilagos eg. Maga a modul elketyeg az usb-rol!!
4. igen megoldhato a dobozolas.

mgb

Itt is válogathatsz
Konkrétan nekünk (cég) usb-4761 van.
Adtak hozzá telepítő CD-t, visual C++, visual basic, delphi példaprogramokkal + forráskód.

Alkoholmentes sör -> guminő -> windows emulátor

Szia informaci!

Nagyon jól hangzik. De a további kérdéseim lennének:

1, Ár?
2, A Visual Basic példaprogramok futnak-e az EXCEL VB makró környezetében? Ugyanis a barátomnak lesz, akinek Windows van a gépén, nekem meg Linux. Ezért gondoltam először Java-ra, mert a saját gépemen terveztem a program fejlesztést, viszont ő használná az eszközt. Tehát fontos lenne, hogy az ő gépén mindenféle egyéb szoftver beruházás nélkül be lehessen üzemelni az eszközt.
3, Java alkalmazás elképzelhető-e az eszközre?
4, Laptop esetén szükséges-e az eszközt külön megtáplálni? Ha igen, akkor van-e hozzá tápegység? (Mennyiért?)

1, Drága. (még keresem az árát)
2, EXCEL VB makró szerintem nem járható. DE a hozzáadott példaprogramokkal EGYBŐL megy. Kipróbáltam.
3, Passz.
4, Szerintem nem kell, egyébként az általunk használt eszközön nincs is külön táp csatlakozó.

Összefoglalva: Ez egy drága cucc, de a hozzáadott programokkal könnyen használhatod, gyakorlatilag a példaprogramot kell továbbfejlesztened.

Alkoholmentes sör -> guminő -> windows emulátor

Én az USB-s adatfeldolgozást ezzel oldottam meg:
http://sine.ni.com/nips/cds/view/p/lang/en/nid/14604

40k HUF körül volt. az ára. Nem tudom java-val mit lehet
tenni, én C-ben írtam hozzá drivert. Ha ezt választod át tudom
adni a forrásanyagot és kernel modul installálásának metódusát
is.

meditor_kukac_meditor_pont_hu

> Sol omnibus lucet.

Bazz... EGYENLŐRE például azt jelenti, azonos méretűre. EGYELŐRE olyasmit jelent, hogy még egy ideig. Tessen már megtanulni...

Esetleg nézz körül itt.

Nem tudom, hogy van e olyan kütyüjük ami neked megfelel, nem volt időm keresgélni, és nem is ismerem ezeket a boardokat, de egy haverom említette nemrégiben, hogy ilyen boardot rendeltek kb 20 euroért, usb-s és vannak IO-lábai + linux által is "támogatott".

Ha van kedved nézz rá ...

Gondolom már megoldódott, de egy hülye ötlet: usb-s billentyűzet/egér mint beviteli eszköz? :)))