1

Just what the title states ...

A geophone gives an analog output. It must be digitized before it may be posted on USB. Is mere digitization sufficient? What else must happen after digitization before the signal may be put on USB?

2
  • Why the closure vote?
    – Everyone
    Nov 19, 2011 at 9:01
  • Your question is very broad and open ended and not suitable for the Stack Exchange question and answer model.
    – ChrisF
    Jan 24, 2012 at 9:56

3 Answers 3

2

No, you cannot just "put data on USB".

USB is Universal Serial Bus. A bus (in a computer) is a control and data pathway, in this case to connect periperal devices (aka adapters) to the computer. USB connects periperal devices just like PCI accepts adapter cards/boards. The USB Host expects to communicate with a USB device using the USB protocol. USB is simply the method for a peripheral to connect with the computer; USB (the bus itself) is not an end-user device or connection.

Most likely you are confusing "USB" with a serial (RS-232) communications USB adapter. What you think is just a USB port is really a USB device for a serial communication port. Windows will report such a USB device as a COM port; the fact that the connection is through USB is hidden unless you hunt for more info, such as looking at the Device Manager.

To answer the obvious follow-up question: "No, you cannot just put data on a serial communication link" if you expect to read it reliably on the receiving end.

  • You would just be putting binary data on the link without any integrity checks (a bad idea).
  • If the A-to-D conversion produces more than 8 bits per sample, then you have multibyte sample values. You need some kind of data framing to group & identify the bytes per sample.
  • There are line protocols that use (longer than "normal") time gaps to indicate framing or packet boundaries (e.g. Modbus), but this requires serial port and driver support at the receiving end to work reliably. At the application/user level there is no way to accurately measure the time between received bytes. So using additional bytes to provide framing is most robust.
  • The proper way to send & receive data on a serial link to to define & use a protocol, especially if the data is binary (not text). Even if the data flow is unidirectional, choose either fixed length or variable length records and define a layout that organizes the transmitted data.
1

You must ensure that digitization frequency (sampling frequency) is 2x larger than maximum frequency (that is considered to be non-noise) in input signal.

Otherwise you'll get a plain garbage.

This is called Nyquist sampling theorem.

1

You may have to normalize the signal to some standard. You also have to decide the range of values that you wish to digitize. To recreate the data from the data source will you use 8, 16 or 32 bit digitized data. Also with what skew does the source signal change so how many points will you read in a second to again recreate the source data.

So Yes conversion alone is sufficient, but what specifics of conversion are going to be important. You will have to experiment with.

Not the answer you're looking for? Browse other questions tagged .