Welcome to the Industrial Automation website!

NameDescriptionContent
XING-Automation
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

ADLINK ACL-7122 Digital I/O Card Installation and Programming

F: | Au:FANS | DA:2026-08-03 | 357 Br: | 🔊 点击朗读正文 ❚❚ | Share:

This design allows for software shutdown interrupts or cascading multiple interrupt sources through PC4.


Definition of connector pins and external wiring

The six 50 pin IDC male heads (CHO~CH5) on the card are arranged with OPTO-22 standard pins and can be directly connected to ADLINK's TB-24R (24 relay outputs), TB-24P (24 optocoupler inputs), or TB-16P8R (16 inputs+8 outputs) terminal boards. The PA, PB, and PC of each channel each occupy 8 bits, among which the high 4 bits (PC4~PC7) and low 4 bits (PC0~PC3) of the PC can be independently set for input/output.

Typical connection method:

Control external relays: Set PA/PB as the output, connect TB-24R through a ribbon cable, and drive one relay coil for each output position.

Read limit switch: Set PC or PA as input, connect TB-24P, and isolate external 24V signal with optocoupler.

Attention: All I/O are TTL level (high ≥ 2.0V, low ≤ 0.8V). If high voltage/high current loads need to be driven, they must be isolated through OPTO-22 module or relay board to avoid damaging the card.


Register Structure and Programming Fundamentals

The I/O mapping of ACL-7122 is based on four registers (PA, PB, PC, control word) per channel, with the base address set to B. Therefore:

CH0: B+0 (PA), B+1 (PB), B+2 (PC), B+3 (CW)

CH1: B+4~B+7

CH2: B+8~B+11

CH3: B+12~B+15

CH4: B+16~B+19

CH5: B+20~B+23

Control word format (written to CW register):

D7=1 (mode setting flag), D6~D5=00 (mode 0), D4=port A direction (0=output, 1=input), D3=PC high 4 bit direction (0=output, 1=input), D2=port B direction, D1=PC low 4 bit direction, D0 unused (usually 0).

For example, set all ports of CH0 as output: control word=1000 0000b=0x80.

Set the PA input, PB output, PC input, and PC output for CH1: D4=1, D3=1, D2=0, D1=0 → Binary 1 001 1 000 0=0x98.

Power on default: All ports automatically enter input mode, and the output latch is a random value. If output is required, the control word must be written to define the direction first, and then the data must be written to the corresponding port.

Output Read Back: Even if set as output, executing inportb (B+PA) can still read the current latch value, making it easier to verify program logic.

Detailed Analysis of Interrupt Programming

Using interrupts requires three steps:

Hardware settings: Select IRQ through JP6 and set JPx to E or P mode.

Software initialization: Write the appropriate I/O direction to the control word of the corresponding channel (note that PC0/PC3 must be inputs to receive external triggers, as they are interrupt source pins).

Clear interrupt status and allow interrupt: The manual provides a "false read" technique: first write an index to the control word register of the channel (i.e. base address+3,+7,...), and then read once from the PC port of this channel to clear the suspended interrupt and re enable it. Example code:

outportb(BASE+3, 0x00); //Point to CH0 CW (in fact, just write any CW address)

dummy = inportb(BASE+2); //Read PC0, clear interrupt

This operation will reset the interrupt trigger logic, enabling subsequent edge detection.

Writing ISR: Under DOS or Windows 3.1/95, interrupts can be mounted using the setvect() function of d_dos_getvect/d_dos_detvect or Borland C. In the service program, it is necessary to read the corresponding PC port to determine the interrupt source (PC0 or PC3 level), but please note that the input is not latched, and the order cannot be determined. Only the current state can be recognized.

Self triggering test: The manual provides an example program that generates interrupts through software simulation - by applying a jump to the PC0 or PC3 pin of a certain channel (by writing to the PC port), the interrupt can be triggered for debugging.

Interrupt sharing: Due to the output being in three states, multiple ACL-7122s can share the same IRQ. ISR needs to poll the status of each card to determine which card has generated an interrupt.


Common troubleshooting

Based on the manual and on-site experience, the following is compiled:

Possible causes and solutions for the fault phenomenon

The system is unable to recognize card base address conflicts or check for SW1 settings beyond the range. Refer to Appendix A to confirm unoccupied addresses (such as 2F8h as COM2, 3F8h as COM1, etc.)

If there is no level change in the output port, forget to write the control word or if the control word is incorrect, make sure to write CW first and then write the data; Check D7=1, correct direction position

Interrupt does not trigger JPx not set to E/P, or IRQ is blocked to confirm JPx jumper; Check if the IRQ in the system BIOS is assigned to ISA instead of PCI; Viewing the masking register with inportb (0x21) in DOS

Interrupt triggered multiple times or randomly triggered but not cleared correctly (false read not executed). In each ISR, a read operation must be performed on the PC port to clear the edge detection flag

When multi card sharing is interrupted, the response is abnormal. ISR does not poll all cards. In ISR, read the PC ports of each card in sequence to determine which one has changed

Insufficient high-level output driver, unused buffer or heavy load PA/PB. The minimum high-level is 2.4V and the current is 24mA. If the load is too large, a driving transistor needs to be added

  • Sigmatek VI021 VARAN Interface Module
  • Sigmatek Engel RD-M6-2 Robot Drive
  • Sigmatek CNC031 Positioning Module
  • Sigmatek TO161 Digital Output Module
  • Sigmatek CCL912 CPU PSU Module
  • Sigmatek ETV0821 Operator Terminal
  • SIGMATEK ET 261 Operator Terminal
  • SIGMATEK CP731-K Control Module 20-004-731-K
  • SIGMATEK ETEK Motherboard 12-250-021-K CM5V020
  • Sigmatek DEZ 181 DIAS Input Output Module
  • Sigmatek IPC111-D Industrial PC
  • SIGMATEK AKM54L-ANC2GBB0 Servomotor with Gearhead
  • SIGMATEK CTMS020 CM5V020 CNC Controller
  • DEMAG ERGOTECH 061 381 66 Sigmatek Control Unit
  • Sigmatek DAI 883 Module
  • Sigmatek ETV1521 Control Panel Installation Terminal
  • Sigmatek 9802.289.01 Board Control TA71 Display
  • Wittmann Sigmatek EU-252 proDrive W4 Servo Drive
  • Sigmatek CDM166 C-DIAS Module
  • Sigmatek DCP082 DIAS Central Unit
  • Sigmatek CCP081 C-DIAS Processor Module
  • Sigmatek MD111-1 Drive Module
  • Sigmatek ETV0821 Operator Terminal
  • Sigmatek ISE021 Interface Module
  • Sigmatek DCC080L Slide Control Module
  • Sigmatek AI075 Analog Input Module
  • SIGMATEK TO161 20-007-161 Module
  • SIGMATEK CIC011 Module
  • SIGMATEK AE0000318502 Hand Terminal Pendant
  • Sigmatek Krauss Maffei PC323-K Control Unit
  • Sigmatek Krauss Maffei PC321-K Control Cabinet PC
  • SIGMATEK CIV521 Control Module
  • SIGMATEK C-IPC-171 Industrial PC
  • SIGMATEK MDP101-L DIAS Drive Network Module
  • Sigmatek Krauss Maffei PC323-K Control Cabinet PC
  • SIGMATEK CRCH081 C-SLIDES Temperature Module
  • Sigmatek PC301-E6 Industrial PC SSD
  • Sigmatek SDI101 S-SLIDES Safety Input Module
  • Sigmatek CIV521 VARAN Control Module
  • Kollmorgen Sigmatek AKM42G-ANCNGBB0 Servo Motor
  • Sigmatek PC 521 Process Controller
  • Sigmatek Geode LX800 12-780-012 Industrial PC
  • Sigmatek STO081 S-DIAS Safety Output Module
  • Sigmatek SCP111 S-DIAS Safety CPU Module
  • Sigmatek CDI161 Industrial I O Module
  • Sigmatek Wiring Board V2 DIAS 05-250-023
  • Sigmatek CP102 20-004-102 S-DIAS CPU Module
  • SIGMATEK SLIDES CNC 115 Module
  • SIGMATEK DCC080 05-700-080-2 Control Module
  • SIGMATEK MDD 121 Drive Axis Module
  • SIGMATEK CIO011 C-DIAS Multi I/O Module
  • SIGMATEK CIV512 Servo Drive
  • SIGMATEK CM5V020 12-250-021-K Wiring Module
  • SIGMATEK CIO011 12-013-011 Multi I/O Module
  • SIGMATEK 01-450-031 C-IPC Industrial Computer
  • SIGMATEK AKM24D-ANBNGBB0 Servo Motor
  • DEMAG NC4 LP0001289.03 Control Module
  • Sigmatek ETEK Industrial PC C-IPC with Option Module
  • Sigmatek AO081 20-010-081 Analog Output Module
  • Sigmatek CNC 031 Positioning Module
  • Sigmatek CP731-K 20-004-731-K CPU Module
  • Sigmatek MDD 3320-JR-A Drive Module
  • Sigmatek PM Servo Motor AKM52K-ANC2GBB0
  • Sigmatek MDP 101 09-403-101 Power Module
  • Sigmatek S-SLIDES AO046 Analog Output Module
  • Sigmatek ICA111 20-102-111 Interface Module
  • SIGMATEK DCP646 Module 05-004-646
  • SIGMATEK SDI101 Digital Input Module 20-891-101
  • SIGMATEK S3330-2 Directional Gyro Altitude Instrument
  • SIGMATEK MDP102-1 Controller
  • SIGMATEK SMT 01-230-321 Touch Screen
  • SIGMATEK Krauss Maffei PC301-K 01-310-301-K Industrial PC with 8GB SSD
  • SIGMATEK ETT731 01-230-731 Built-in Touch Terminal
  • SIGMATEK CIV521 Control Module
  • SIGMATEK DME 128 Module 05-005-128
  • SIGMATEK SCP111-S 20-890-111-S S-DIAS Safety CPU Module
  • Sigmatek SCP111 S-DIAS Safety CPU
  • Sigmatek CRIF081 Interface Module
  • Sigmatek CP112-1 S-DIAS CPU Module
  • Sigmatek MDD121-L DIAS Drive Axis Module
  • Sigmatek C-IPC 01-450-024 Industrial PC
  • Sigmatek SDD215-23 SLIDES Drive
  • Sigmatek DPS001 DIAS System Components
  • Sigma-Tek 4000B-30 Directional Gyro
  • Sigmatek SDD340-46 SDD Series Drive
  • Sigmatek CEZ221 Euromap67 I O Module
  • SIGMATEK VI021 Interface Module
  • SIGMATEK CP731-K Control Module
  • SIGMATEK Krauss Maffei PC321-K Industrial PC
  • SIGMATEK ET322 Operator Terminal
  • SIGMATEK CP102 Control Module 24VDC
  • SIGMATEK SRO021 Relay Output Module
  • SIGMATEK DCP640 DIAS Central Unit
  • SIGMATEK MDD 121 Drive Axis Module
  • SIGMATEK AI043 Analog Input Module
  • ENOTEC OXITEC 5000 SME-53310000 Oxygen Analyzer
  • SIGMATEK Krauss Maffei PC301-K 01-310-301-K Industrial PC
  • SIGMATEK SDD310-23 VARAN Servo Drive
  • SIGMATEK CDM 163 and CIC 011 C-DIAS Input Modules
  • SIGMATEK MDP 101-1 Power Module
  • SIGMATEK CM5V020 Wiring Circuit with CTMS020
  • SIGMATEK CCP521 C-DIAS Processor Module
  • SIGMATEK MDP 101-K Power Module
  • SIGMATEK ETEK C-IPC 733MHz VIA Eden 7000
  • SIGMATEK DCP 643 DIAS PLC CPU Module
  • SIGMATEK TAE121 12-200-121 Operator Terminal
  • Sigmatek TMS012-T Injection Moulding Technology Module
  • Sigmatek MDD 121-1 Controller
  • Sigmatek CDM167 Module
  • Sigmatek DCP082 DIAS Central Unit
  • Sigmatek ETT731 Built-In Terminal Touch
  • Sigmatek CCP521 C-DIAS Processor Module
  • Sigmatek Krauss Maffei PC301-K Control Cabinet PC
  • Sigmatek CIC-21 C-DIAS CAN Module
  • Sigmatek CIO-011 Multi I O Module
  • Sigmatek 01-450-152D C-IPC 152 Industrial PC
  • SIGMATEK 01-450-024 C-IPC 128MB VIA 733MHz
  • SIGMATEK CCL-081 C-DIAS Processor Module
  • SIGMATEK CP311 20-004-311 Module
  • SIGMATEK EP00000262 SLIDES MIDI I O-V3 Controller
  • SIGMATEK TMS012-T Slides Technology Module
  • SIGMATEK MDD111-1 Drive Axis Module
  • SIGMATEK MDP101-1 PLC Module
  • SIGMATEK CP111 S-DIAS Processor Module
  • DEMAG ErgoControl Sigmatek NC4 Display Unit
  • SIGMATEK DCP642 Module
  • Sigmatek Demag NC4 9617.067.03 Control Module
  • Sigmatek DCP 643 Central Processing Unit