» Introduction
The Linux comes with a huge level of support from the open source development community.
A well deserved reputation for stability and flexibility, no licensing fees or use restrictions to speak of these factors, constitute the Linux as an ideal operating environment.
As the Linux operating system continues to gain ground in the industry and enterprise application, ICPDAS provides drivers and libraries to help users to ride the Linux for their industry control projects.

There are two groups of software that support the ICPDAS serial modules and IO add-on cards in the Linux.
The serial modules are supported by the libi7k and the USB to Serial projects.
The IO cards are supported by the IxPIO, IxPCI, and the IxISA projects.

» libi7k (DCON_Linux)
Since the RS-232 is an officially supported serial device by the Linux system, all ICPDAS serial modules which communicate to PC RS-232 (COM) port can work without special driver installed.
The Linux application communicates to the module by reading and writing the /dev/ttySn which represents the module connected port.
However, the Linux serial device comes with wealthy features from the UNIX legacy, some features may be tricky.
The libi7k provides a convenient way to open/close and read/wirte to the serial port in the ICPDAS module acceptable format.

The libi7k comes with serial IO functions, wraps of the MS I-7000/8000/87000 libraries, i7kon, iWarp, and examples.
The wraps help users who have to work in the Linux but are only familiar with the MS libraries.

» i7kon
The i7kon is an NCURSES text console tool, provides some simple functions to open/close serial port, search and send manual command to module.
The i7kon allows user to run on a telnet or ssh connected terminal and send command to the module connected at the serial port of the remote host.
The i7kon is also an example for console application, users can feel free to modify it for their use.
|
» iWarp
The iWarp is a demonstration that redirects serial data to TCP/IP packages and allows users to control their module accross the Internet.
The iWarp has two parts, iw and iwc. The iw is the server side that listens on a specified TCP/IP port, redirects the command comes from the port to a specified local serial port, and reads the response from the serial port to the TCP/IP port.
The client side, the iwc, is an X GUI application written with the GTK library.
The iwc allows user to connect an iw server which has IKIT-06 Professional Kit (I-7060D, I-7012D, I-7021) connected to send predefined AO/DO function pattern or manual command, and read AI/DI.
The iWarp uses simple TCP/IP facility to achieve the Internet remote serial control, user can modify it as their application base.

» USB to Serial
The USB to Serial is a small set of Linux driver modified from the Linux kernel. The driver supports the ICPDAS USB to RS-232 converters, i.e. I-7560, I-7561, and I-7563, which can be attached to the /dev/ttyUSBn device node (or usb/tts/n for devfs).

» IxPIO / IxPCI / IxISA
The ICPDAS IO cards are separated into three groups, the PIO series, the PCI series, and the ISA bus cards, which are supported by the IxPIO, IxPCI, and the IxISA projects, individually.

The IxISA supports all ICPDAS ISA IO cards, and motion cards work on ISA bus.
The driver uses a common interface, which contains a dynamic major number, and dynamic device allocation; therefore, it does not limit the number of served cards.
It allows application in the user space to access the IO ports or registers of the installed ISA cards.
It also supports conditional IRQ signaling and DMA transferability.

The PCI series (the cards with PCI- prefix in model name,) is a small group of the ICPDAS PCI IO cards, which is featured with analog input, digital IO, and counters.
These cards are supported by the IxPCI project. As for the IxISA, the driver uses a common interface which includes a dynamic major number and dynamic device allocation.
It also can support the register IO and simulate edge IRQ signaling condition.

The PIO/PISO series is a rich collection of the ICPDAS PCI IO cards that includes the motion cards work on PCI bus.
They are supported by the IxPIO project. There is one more feature for the IxPIO.
The data pattern function, which allows users to commit their predefined data groups to the driver for PIO-DA cards, combined on-board timer and conditional signaling can output arbitrary wave pattern continuously.

The IxPIO and IxISA warp the MS enc600, mstep3, and mservo3 libraries for all supported motion commands.
|