AUGUST 2011: The PC industry continues to grow in India. By the end of this year, it is forecast that laptop sales will exceed desktop sales. While the portability of computers has always been a key factor, the cost of laptops compared to an equivalent desktop computer has traditionally been the biggest deterrent. With a growing Indian economy and the overall decline of PC prices, the choice between laptops, desktops and other computing platforms has become less clear.
When it comes to PC-based measurement and automation, you might find yourself wondering, what to choose? When you have hundreds of different data acquisition devices to choose from on a wide variety of buses, it can be difficult to select the right bus for your application needs.
Here are 5 basic questions to ask yourself when choosing a measurement bus:
1. How much data will I be streaming across this bus?
2. What are my single-point input/output (I/O) requirements?
3. Do I need to synchronise multiple devices?
4. How portable should this system be?
5. How far will the measurements be from my computer?
How much data will I be streaming across this bus?
All PC buses have a limit to the amount of data that can be transferred in a certain period of time. Known as the bus bandwidth, this is often specified in megabytes per second (MB/s). If continuous waveform measurements are important in your application, be sure to consider a bus with enough bandwidth.
Depending on the bus that you choose, the total bandwidth can be shared among several devices or dedicated to certain devices. The PCI bus, for example, has a theoretical bandwidth of 132 MB/s that is shared among all PCI boards in the computer. Gigabit Ethernet offers 125 MB/s shared across devices on a subnet or network. Buses that offer dedicated bandwidth—such as PCI Express and PXI Express—provide the maximum data throughput per device.
When taking waveform measurements, you have a certain sampling rate and resolution that need to be achieved based on how fast your signal is changing. You can calculate the minimum required bandwidth by taking the number of bytes per sample (rounded up to the next byte), multiplied by the sampling speed, and then multiplied by the number of channels.
For example, a 16-bit device (2 bytes) sampling at 4 MS/s on four channels would be
Your bus bandwidth needs to be able to support the speed at which data is being acquired. It is important to note that the actual system bandwidth will be lower than the theoretical bus limits. The actual observed bandwidth depends on the number of devices in a system and additional bus traffic caused from any overhead. If a lot of data needs to be streamed on a large number of channels, bandwidth may be the most important consideration while choosing the data acquisition bus.
What are my single-point I/O requirements?
Applications that require single-point reads and writes are often dependent on I/O values to be updated immediately and consistently. Based on how the bus architectures are implemented in both hardware and software, single-point I/O requirements could be the determining factor for the bus that you choose.
Bus latency is the responsiveness of I/O. It is the time delay between calling a driver software function and updating the actual hardware value of the I/O. Depending on the bus you choose, this delay could range from less than a microsecond to a few milliseconds. In a proportional integral derivative (PID) control system, for example, this bus latency can directly impact the maximum speed of the control loop.
Fig. 1 shows a common block diagram for a feedback control system where the compensator (or controller) sends an output signal to the system or plant, and reads back a single-point sensor value to calculate the error in the process. If there are many delays along the communication bus, the time between output updates and sensor measurements also increases, resulting in a higher amount of error in the control system.