2010-10-01 5 views
5

Avrò bisogno di integrare un'applicazione Java che ho scritto con un dispositivo medico che utilizza una porta seriale per le comunicazioni. Questo dispositivo è piuttosto costoso, e anche non così portatile.Raccomandazioni per un dispositivo seriale economico

Mi piacerebbe essere in grado di testare il codice ovunque mi trovi, ma puoi farlo solo molto prima di aver bisogno di collegare il tuo dispositivo seriale e iniziare i test.

Quindi, sto cercando un dispositivo elettronico portatile economico che utilizzi una porta seriale per la comunicazione. Ha solo bisogno di comunicare in un modo (cioè ho solo bisogno di raccogliere dati da esso). In questo modo, posso stare seduto al mio bar, collegare il mio connettore seriale a USB, collegare questo dispositivo misterioso e iniziare a ricevere dati.

EDIT:
Per chi è interessato a mia strana situazione, sto collegando ad una scala Tanita TBF-300A
web site
Communication Standard: EIA RS-232C compatibile
Metodo di comunicazione: asincrona
Velocità di trasmissione: 2400bps
Lunghezza dati 7 bit
Parità: ANCHE
Bit di stop: 1 bit

Qualcuno esegue la scansione di un codice a barre, a pochi passi sulla scala, e il mio programma alimenta le informazioni in un database come questo:
Adobe AIR -> BlazeDS -> Java -> hibernate/spring -> HSQL db file di

mio Immagino che scriverò un'app java che prende le informazioni sulla porta seriale e la reindirizza su una porta TCP che la mia app può ascoltare. Questa è la mia ipotesi, per ora.

+0

È il dispositivo che utilizza il protocollo TAP per caso? – Freiheit

+0

@Freiheit No, ma TAP sembra sicuramente interessante. Vedi sopra per maggiori informazioni. – Stephano

+1

Siamo un po 'alla deriva, ma ho fatto un lavoro simile. Ho creato un demone Java per gestire le comunicazioni seriali e ottenere TUTTI i dati dal dispositivo seriale per una determinata transazione in una sola volta, quindi ho effettuato una chiamata al servizio web REST alla mia applicazione per elaborare e archiviare effettivamente i dati effettivi. Se riesci a catturare i tuoi dati in una volta, questo è un modello migliore. Se hai bisogno di confermare il codice a barre con un ACK potresti aver bisogno di qualcosa di un po 'più chiacchierone. RXTX è una buona libreria seriale: http://rxtx.qbang.org/wiki/index.php/Main_Page – Freiheit

risposta

6

Si potrebbe voler guardare com0com. Ciò ti consente di creare porte COM virtuali sul tuo computer e di collegarle in coppia. Con questo, è possibile scrivere una piccola applicazione di test che emula il comportamento del "dispositivo misterioso" e scrive i dati su una di queste porte COM virtuali e fare in modo che l'altra applicazione legga i dati dall'altra porta COM.

Con questa configurazione è possibile eseguire qualsiasi test che non richieda il collegamento dell'attuale apparecchiatura medica, senza acquistare alcun dispositivo esterno. Alla tua applicazione sembrerà una vera porta COM.

Edit:

com0com è solo per Windows, ma qui ci sono alcune alternative per le piattaforme non Windows:

+0

Idea interessante ... Sto programmando su un Mac e il mio altro computer esegue Ubuntu. Funzionerebbe ancora per me? – Stephano

+1

com0com stesso è basato su Windows, ma puoi fare lo stesso su Linux (es. Http://www.dest-unreach.org/socat/) e Mac (ad es. Http://members.iinet.net.au/~ mgl/MartysPlace/MultiCom.html). – Grodriguez

+0

+1 Fantastica idea. Grazie per tutti i link e le informazioni! – Stephano

0

Sono quasi sicuro di avere già un computer!

Ci sono cavi da USB a seriale che potrebbero fare il trucco. Passa semplicemente dalla tua porta seriale della tua scheda madre a una porta USB.

+0

Ho un cavo seriale USB, ma non ho un dispositivo portatile che invierà informazioni sul cavo al mio computer. Questa è la parte che voglio testare, ricevere le informazioni. – Stephano

1

Si potrebbe guardare una sorta di scheda di sviluppo del microcontrollore. Un Arduino o un MSP430 probabilmente si adatterebbe al conto. Dovrai scrivere una piccola quantità di codice per questo, ma potresti farlo per inviare esattamente quello che vuoi.

+0

+1 Ho cercato su Arduino ma non su MSP430. Grazie per il link! – Stephano