1 Foreword .............................. 5 Notes on the documentation...................... 5 Safety instructions .......................... 6 Documentation issue status ...................... 7 2 Product overview............................ 8 Bus Terminal Controllers of the BX series.................. 8 Introduction ............................ 10 The principle of the Bus Terminal .................... 11 The Beckhoff Bus Terminal system .................... 11 Technical data .......................... 13 2.5.1...
Page 4
Table of contents Remanent data .......................... 81 Persistent data.......................... 82 Local process image in delivery state (default config) .............. 83 TwinCAT PLC - Error codes ...................... 85 Mapping the Bus Terminals ...................... 87 Local process image in the TwinCAT configuration ................ 88 5.10 Creating a boot project ........................ 89 5.11 Communication between TwinCAT and BX/BCxx50 ............... 89 5.12 Up- and downloading of programs .................... 91 5.13 Libraries ............................ 94...
All the components are supplied in particular hardware and software configurations appropriate for the application. Modifications to hardware or software configurations other than those described in the documentation are not permitted, and nullify the liability of Beckhoff Automation GmbH & Co. KG. Personnel qualification This description is only intended for trained specialists in control, automation and drive engineering who are familiar with the applicable national standards.
Foreword Documentation issue status Version Modifications 2.1.0 • Download links updated • Design of safety instructions adapted to IEC 82079-1. 2.0.0 • Migration 1.2.0 • Update to firmware version 1.20 1.1.7 • Update to firmware version 1.17 1.1.6 • Update to firmware version 1.16 1.1.4 •...
Fig. 1: Bus Terminal Controllers of the BX series The Bus Terminal Controllers of the BX series (BX controllers) offer a high degree of flexibility. In terms of the equipment and performance range, the BX series is positioned between the BC series Bus Terminal controller and the CX1000 Embedded PC.
Page 9
• BX9000: Ethernet ModbusTCP/ADS-TCP/UDP Programming The BX controllers are programmed based on the effective IEC 61131-3 standard. As with all other Beckhoff controllers, the TwinCAT automation software is the basis for parameterization and programming. Users therefore have the familiar TwinCAT tools available, e.g. PLC programming interface, System Manager and TwinCAT Scope.
RS232 or RS485. This can be used for connecting serial devices, such as displays. In terms of their equipment and performance, the BX series Bus Terminal Controllers are positioned between the BC series Bus Terminal Controllers and the CX series Embedded PCs. The main features distinguishing BC and BX are the larger memory and the expanded interfaces of the BX.
The principle of the Bus Terminal Fig. 3: The principle of the Bus Terminal The Beckhoff Bus Terminal system Up to 256 Bus Terminals, with 1 to 16 I/O channels per signal form The Bus Terminal system is the universal interface between a fieldbus system and the sensor / actuator level.
Page 12
Bus Couplers for all usual bus systems The Beckhoff Bus Terminal system unites the advantages of a bus system with the possibilities of the compact series terminal. Bus Terminals can be driven within all the usual bus systems, thus reducing the controller parts count.
Product overview If the exchange of data over the fieldbus is prone to errors or fails for a period of time, register contents (such as counter states) are retained, digital outputs are cleared, and analog outputs take a value that can be configured for each output when commissioning.
Page 14
Product overview Technical data BX3100 BX5100 BX5200 BX8000 BX9000 Digital peripheral signals 2040 inputs/outputs Analog peripheral signals 1024 inputs/outputs Configuration possibility via TwinCAT or the controller max. number of bytes, depending on fieldbus fieldbus max. number of bytes, 2048 bytes of input data, 2048 bytes of output data Fieldbus connection D-sub, 9-pin Open Style Connector, 5 pin...
Product overview Mechanical data BX3100 BX5100 BX5200 BX8000 BX9000 Weight approx. 170 g Dimensions (W x H x D) approx. 83 mm x 100 mm x 90 mm (BX8000: approx. 65 mm x 100 mm x 90 mm) Mounting with latch, on mounting rail (35 mm DIN rail) Installation position Connection cross-section 0.08 mm²...
3.1.1 Dimensions The Beckhoff Bus Terminal system is characterized by low physical volume and high modularity. When planning a project it must be assumed that at least one Bus Coupler and a number of Bus Terminals will be used. The dimensions of the Bus Terminal Controllers are independent of the fieldbus system.
Bus Terminals (including the KL9010 bus end terminal). Depending on design, the Bus Terminals are 12 mm or 24 mm wide. The height is 100 mm. The BX series Bus Terminal Controllers are up to 83 mm wide and 91 mm deep. Pay attention to the total depth Note that a Bus Terminal Controller with DIN rail and connected plug connectors is usually higher than the specified value of 91 mm.
3.2.1 Potential groups, insulation testing and PE Potential groups A Beckhoff Bus Terminal block usually has three different potential groups: • The fieldbus interface is electrically isolated (except for individual Low Cost couplers) and forms the first potential group. • Bus Coupler / Bus Terminal Controller logic, K-bus and terminal logic form a second electrically isolated potential group.
Mounting and wiring Fig. 9: Potential groups of a Bus Terminal block Insulation testing The connection between Bus Coupler / Bus Terminal Controller and Bus Terminals is realized automatically by latching the components. The transfer of the data and the supply voltage for the intelligent electronics in the Bus Terminals is performed by the K-bus.
Mounting and wiring Fig. 10: Power contact on the left It should be noted that, for reasons of electromagnetic compatibility, the PE contacts are capacitively coupled to the mounting rail. This can both lead to misleading results and to damaging the terminal during insulation testing (e.g.
Mounting and wiring The BX controller is connected via the upper terminal points labelled 24 V and 0 V. This voltage supplies the Bus Terminal Controller electronics, and the Bus Terminal electronics via the K-bus. It is galvanically separated from the field level voltage. Fig. 11: Terminal points for the Bus Terminal Controller supply Fig. 12: UL identification Power contacts supply (Up)
Mounting and wiring 3.2.3 Programming cable for COM1 You can use a 1:1 cable for programming the BX Controllers (socket/plug, and only connect the pins listed below). On the BX side you need a nine-pin connector, and on the PC side usually a nine-pin socket. The wiring is 1:1, and the necessary pins can be found in the table below.
COM1 and COM2. A special programming cable (ZK1000-0030) for connecting the two interfaces is available from Beckhoff. The COM2 interface is intended for the connection of serial devices. For the COM2 interface, you can choose between RS232 or RS485.
Parameterization and Commissioning Parameterization and Commissioning Start-up behavior of the Bus Terminal Controller When the Bus Terminal Controller is switched on it checks its state, configures the K-bus, creates a configuration list based on the connected Bus Terminals and starts its local PLC. The I/O LEDs flash when the Bus Terminal Controller starts up.
Parameterization and Commissioning Configuration 4.2.1 Overview Configuration types The Bus Terminal controllers of the BCxx50, BCxx20 and BXxx00 series can be configured in two different ways: DEFAULT CONFIG or TwinCAT CONFIG. DEFAULT-CONFIG Bus Terminals are mapped in the order they are inserted, i.e. first the complex Bus Terminals followed by the digital Bus Terminals.
Page 27
• Variable I/O mapping • Type-specific PROFIBUS data (BC3150 and BX3100 only) • RTC (real-time clock) (BX series only) • SSB (Smart System Bus) (BX series only) • PLC settings • K-Bus settings The configuration can be transferred to the BCxx50 or BXxx00 via fieldbus ADS protocol or serial ADS protocol.
All Bus Terminal Controller components are now available: • Fieldbus interface • K-bus interface [} 36] • PLC Program [} 38] • SSB [} 41] (only Bus Terminal Controllers of the BX series) Please refer to the relevant chapter for device configuration. 4.2.3 Downloading a TwinCAT configuration The TwinCAT configuration is loaded into the Bus Terminal Controller via ADS protocol.
Parameterization and Commissioning ADS protocol via the fieldbus (BC3150, BC5150, BC9x20, BC9050, BX3100, BX5100, BX9000 only) A prerequisite is that TwinCAT operates as master and is engaged in data exchange, i.e. the physical and fieldbus configuration must be complete, and data exchange must take place between the master (e.g. fieldbus master card) and the Bus Terminal Controller.
Parameterization and Commissioning In Config mode / FreeRun the configuration can now be downloaded to Bus Terminal Controller. If the Bus Terminal Controller is in Stop mode, ADS communication is not yet activated. In this case, it is not possible to download the configuration.
Parameterization and Commissioning Fig. 25: Choose Target System Select the corresponding Bus Terminal Controller. Fig. 26: Selecting the Bus Terminal Controller The state of the Bus Terminal Controller is shown at the bottom right of the System Manager. Fig. 27: State of the Bus Terminal Controller Click on the red folder.
Parameterization and Commissioning Fig. 28: Uploading the TwinCAT configuration 4.2.5 Resources in the Bus Terminal Controller The memory resources assigned in the Bus Terminal Controller are shown in the System Manager in the Resources tab of the Bus Terminal Controller. Mapping code The mapping code is required for calculating the TwinCAT configuration (see Figure Memory for the code mapping).
Parameterization and Commissioning Fig. 30: Data memory mapping Used code and data memory Fig. Code and data memory (1) "Used PLC code" in %. Fig. Code and data memory (2) "Used PLC data" in %. Fig. Code and data memory (3) "Used PLC source" in %. Fig. 31: Code and data memory Other memory Fig.
Fig. 32: Other memory 4.2.6 ADS connection via serial interface (from firmware version 1.xx or 0.99x, Bus Terminal Controllers of the BX series and for all BCxx50) From TwinCAT 2.9 build 1020 (TwnCAT level PLC, NC or NCI) Use only a serial connection To ensure trouble-free operation of the ADS link via the serial interface, only a serial connection to the BX controller is allowed.
ADS connection is only possible, if the AMS Net ID is adjusted. BX series: reading the AMS Net ID The current AMS Net ID can be read from the menu via the display of BX series Bus Terminal Controller. AMS Net ID 1.1.1.1.1.1...
K-bus Bus Terminal and end terminal required To operate a Bus Terminal Controller of the BC or BX series, at least one Bus Terminal with process image and the end terminal must be connected to the K-bus. BX Settings tab Fig. 34: BX Settings tab...
Parameterization and Commissioning K-Bus Re-Trigger If the processor is busy dealing with the PLC project or the SSB, the K-Bus cannot be processed for a certain amount of time. This leads to triggering of the Bus Terminal watchdog and dropping of the outputs. The Bus Terminal Controller is set such that the K-bus watchdog is re-triggered 3 times after 85 ms.
Parameterization and Commissioning K-Bus variables PLC interface: Not supported (only included for moving CX or BX projects) K-bus state: see Diagnostics 4.2.8 4.2.8.1 Inserting a PLC project For variable mapping, configuration has to be specified in the system manager. This is where the link between PLC and hardware is specified.
Parameterization and Commissioning Fig. 37: Connecting PLC variable and hardware Once all links have been created, activate the configuration Actions/Activate Configuration (Ctrl+Shift+F4) and start TwinCAT Set/Reset TwinCAT to Run Mode. Ensure that you have selected the correct target system (bottom right in the System Manager window). Fig. 38: Target system display BX8000 Version: 2.1.0...
Parameterization and Commissioning 4.2.8.2 Measuring the PLC cycle time The task time is set in PLC Control. The default setting is 20 ms. Fig. 39: Setting the task time In the default setting, the PLC program is called every 20 ms, as long as the general cycle time is less than 20 ms.
Parameterization and Commissioning Fig. 40: Displaying the PLC cycle time 4.2.9 4.2.9.1 SSB overview The SSB (Smart System Bus) is a sub-bus system based on CANopen. It is a CANopen master with limited functionality. CANopen slaves may be connected to this interface for reading or writing distributed I/Os. Parameterization SDOs (service data objects) can be sent to the slave via a start-up window.
Parameterization and Commissioning Guarding Guarding is supported and is sent after a configurable interval. 4.2.9.2 CANopen cabling Notes related to checking the CAN wiring can be found in the Trouble Shooting [} 56] section. 4.2.9.2.1 CAN topology CAN is a 2-wire bus system, to which all participating devices are connected in parallel (i.e. using short drop lines).
Shorter drop line lengths must be maintained when passive distributors ("multiport taps"), such as the Beckhoff ZS5052-4500 Distributor Box. The following table indicates the maximum drop line lengths and the maximum length of the trunk line (without the drop lines):...
ZB5100 CAN Cable A high quality CAN cable with the following properties is included in Beckhoff's range: • 2 x 2 x 0.25 mm² (AWG 24) twisted pairs, cable colors: red/black + white/black •...
Page 45
- it should nevertheless still be fully connected through. Notes related to checking the CAN wiring can be found in the Trouble Shooting [} 56] section. 4.2.9.2.7 Cable colors Suggested method of using the Beckhoff CAN cable on Bus Terminal and Fieldbus Box: BK51x0 pin Pin BK5151...
Page 46
Parameterization and Commissioning 4.2.9.2.8 BK5151, FC51xx, CX with CAN interface and EL6751: D-sub, 9 pin The CANbus cable is connected to the FC51x1, FC51x2 CANopen cards and in the case of the EL6751 CANopen master/slave terminal via 9-pin Sub-D sockets with the following pin assignment. Assignment CAN low (CAN-) CAN ground (internally connected to pin 6)
Page 47
Parameterization and Commissioning 4.2.9.2.9 BK51x0/BX5100: 5-pin open style connector The BK51x0/BX5100 (X510) Bus Couplers have a recessed front surface on the left hand side with a five pin connector. The supplied CANopen socket can be inserted here. Fig. 48: BK51x0/BX5100 socket assignment The left figure shows the socket in the BK51x0/BX5100 Bus Coupler.
Page 48
Fig. 50: Pin assignment: M12 plug, fieldbus box Beckhoff offer plugs for field assembly, passive distributor's, terminating resistors and a wide range of pre- assembled cables for the Fieldbus Box system. Details be found in the catalogue, or under www.beckhoff.de.
Page 49
With the left mouse button, a CANopen node can now be selected on the SSB device. Fig. 53: Adding a CANopen device All Beckhoff CAN nodes are available, as well as a general CANopen node for CANopen devices from other manufacturers.
Page 50
Parameterization and Commissioning Fig. 54: Selecting a CANopen node Now link the PLC variables with your CAN node. Once the configuration is complete, load it into the BX. 4.2.9.4 SSB - SDO communication CANopen SDO communication (Service Data Object) is used to read or write any parameters in the CANopen bus node's object directory.
Page 51
IDXOFFS SDO Subindex Length of SDO data (1...4) Download BX (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207257611.zip) Setting individual or all nodes to pre-operational or operational state The ADSWRTCTL function block can be used for setting individual CANopen nodes or all slaves to pre- operational or operational state.
Page 52
Parameterization and Commissioning Download BX (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207259787.zip) Restarting the SSB interface The ADSWRTCTL function block can be used to stop and restart the SSB. It should be stopped first before restarting it. Input parameters Description NETID Local NetId of the BX or leave empty, e.g. with ''...
Page 53
Parameterization and Commissioning NodeState value Description No error Node deactivated Node not found SDO syntax error at Start Up SDO data mismatch at Start Up Node start up in progress SSB Bus off Pre-Operational Severe bus fault Guarding: toggle error TxPDO too short Expected TxPDO is missing Node is Operational but not all TxPDOs were received...
Page 54
Expected value (if offset 6 = 1) 24 - 25 Number of consecutive emergencies 26 - n Emergencies (8 bytes each) Download BX (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207261963.zip) Download sample System Manager file BX (https://infosys.beckhoff.com/content/1033/bx8000/ Resources/zip/3207264139.zip) Reading the number of PDO telegrams with AdsRead Input parameters Description NETID...
Page 55
Parameterization and Commissioning Configuration of the node ID required The node ID must be configured before the ADS function blocks is called in the TwinCAT configura- tion. Sending a CAN message This ADSWRITE command enables any CAN message to be sent. Input parameters Description NETID...
Page 56
Parameterization and Commissioning 4.2.9.7 CANopen Trouble Shooting Error Frames One sign of errors in the CAN wiring, the address assignment or the setting of the baud rate is an increased number of error frames: the diagnostic LEDs then show Warning Limit exceeded or Bus-off state entered. Error Frames Warning limit exceeded, passive error or bus-off state are indicated first of all at those nodes that have detected the most errors.
Page 57
At all connecting points, branches and so forth the screen of the CAN cable (and possibly the CAN GND) must also be connected, as well as the signal leads. In the Beckhoff IP20 Bus Couplers, the screen is grounded for high frequencies via an R/C element.
Page 58
CANopen experts - the Beckhoff support team can help here. A free channel on a Beckhoff FC5102 CANopen PCI card is appropriate for such a trace - Beckhoff make the necessary trace software available on the internet. Alternatively, it is of course possible to use a normal commercial CAN analysis tool.
Page 59
(The system manager file has to be transferred to the BX controller via ADS). • BX program file (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207270667.zip) For the configuration download via ADS, either a BECKHOFF fieldbus master or a free serial port is required. 4.2.9.8.2 Communication between BX controllers (via SSB) 2 or more BX controllers can exchange data via the SSB.
Page 60
• Program file BX_ONE (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207275019.zip) • TwinCAT System Manager file BX_TWO (https://infosys.beckhoff.com/content/1033/bx8000/ Resources/zip/3207277195.zip) • Program file BX_ONE (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207279371.zip) For the configuration download via ADS, either a BECKHOFF master (FC310x, FC510x, FC520x) or a free serial port is required. Version: 2.1.0 BX8000...
Page 61
◦ BX program file (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207283723.zip) For the configuration download via ADS, either a BECKHOFF fieldbus master or a free serial port is required. AX2000 description The following sections are extracts from the AX2000 drive manual. Further information can be found on the internet at http://www.beckhoff.de.
Page 62
Parameterization and Commissioning Hardware and interfaces Setting the Station Address The station address (device address at the CAN bus) of the servo drive can be set in three ways: • Via the front panel keyboard (see AX2000 installation guide) • Via the "Basic settings" screen of the DRIVE.EXE commissioning software •...
Page 63
• Some Bus Terminals for the K-bus (here 3 x KL2114, can be adjusted in the System Manager file) • 1 x Cimrex 41 • 1 x CAB 15 CAN adapter • BX sample program in ST: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207285899.zip) • BX example configuration: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207288075.zip)
Page 64
• Cabling material and power supply For the configuration download via ADS, either a BECKHOFF fieldbus master or a free serial port is required. Reconfiguration example for TwinCAT with FC510x CANopen master card An example for converting a drive is listed below.
Page 65
Parameterization and Commissioning IclA D065 description The following sections are extracts from the IclA drive manual. They were provided by the company SIG Positec Automation GmbH for the purpose of describing the basic parameters. Further information can be found on the internet at http://www.sig-positec.de. Hardware and interfaces Fig. 63: IclA drive connections •...
Page 66
Parameterization and Commissioning Fig. 65: Fieldbus connection Control word 0x6040 The object represents the control word for the device. The control word is used for several control tasks: • Changeover between different operating states. The possible states and transitions can be found under the index keyword "machine state".
Page 67
Parameterization and Commissioning Further details for monitoring travel operation can be found under the keywords "Operating mode, starting", "Operating mode, monitoring" and in the description of the respective operating modes in sections "Manual mode" and "Positioning mode". The bits for device status monitoring are described in section "Diagnostics and trouble shooting".
Page 68
Parameterization and Commissioning • Drive area D0 - D1. From ranges D0 - W0 and D1 - W1, the drive can • only be moved backwards towards the operating range. • Security area S0 - S1. From areas S0 - D0 and S1 - D1, the drive can only be moved backwards manually.
Page 69
• 1 x Lenze CANopen Interface 2175 • Cabling material and power supply For the configuration download via ADS you need a BECKHOFF fieldbus master card or a free serial port. Lenze description The following sections are extracts from the Lenze 2175 manual. They were provided by the company Lenze Drive Systems GmbH for the purpose of describing the basic parameters.
Page 70
Parameterization and Commissioning Fig. 69: External power supply - internal power supply (State at Delivery) For CANopen communication set DIP switch 10 to "ON". Fig. 70: DIP switch Baud rate DIP switches 7-9 Transfer rate [kbps] 500 (default) 1000 Priority of the DIP switches DIP switch 6 has the smallest weighting.
Page 71
In the default setting, the Lenze drive will send its output PDOs only once it has received a sync telegram from the CAN master. If you set the trans. type to 2, for example, the Lenze drive will send an output PDO after every second sync telegram it receives. Sample project • TwinCAT-System-Manager-File: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207301131.zip) • TwinCAT-PLC-File: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207303307.zip) BX8000...
Parameterization and Commissioning 4.2.10 Real-Time Clock (RTC) A real-time-clock (RTC) with backup battery is implemented on the BX controller. The clock has a battery. Setting the real-time clock The simplest way of setting the clock is via the System Manager. When the ADS communication is operating normally, the current time is displayed on the BX controller.
Parameterization and Commissioning Writing of the RTC via ADS Description Meaning Value NETID Target device see System Manager "ADS" Port ADS port number IDXGRP IDX group 0x0000_F100 IDXOFFS IDX Offset 0x0000_0000 Length Length of the data 16 byte Variable type Type of variable TIMESTRUCT Setting via the navigation switch See menu.
Parameterization and Commissioning • Library [} 100] Menu 4.3.1 BX menu settings To change into the menu, press the navigation switch for three seconds. The Menu directory appears first. • You can change between the menu settings with the RIGHT/LEFT keys (the menu shown in row 1 is the active menu).
Page 75
Parameterization and Commissioning Switch assignment Fig. 74: Switch assignment Main menu Submenu Submenu Read/Write 1st row 2st row MENU Password **** not set See below ???? set Factory settings Activate? Pressing the key causes the factory setting to be reset and the controller to be rebooted automatically Reboot Activate?
Page 76
Parameterization and Commissioning Bus-specific menu items BX3100 F-bus Address* >current value< 1-126 PROFIBUS Baud rate* >current value< read only read only Status >current value< read only Diagnostic* >current value< read only BX5100 F-bus Address* >current value< 1-126 CANopen Baud rate* >current value<...
Page 77
Parameterization and Commissioning BX8000 Version: 2.1.0...
The display and the navigation switch can also be used for user-specific purposes, for example displaying diagnostic information or changing parameters. A simple example is provided that can be used and adapted to get you started. Download (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207305483.zip): Configuration software KS2000 Bus Terminal controllers of the BCxx50, BXxx20 and BXxx00 series cannot be parameterized and configured with the KS2000 configuration software.
Page 79
Parameterization and Commissioning Required KS2000 version Configuration or diagnostics of Bus Terminals at BXxx00 is supported from KS2000 version 4.3.14. In some Bus Terminals (e.g. KL25xx, KL6811, KL6201, KL6401) the following parameters must be set in order to be able to use the configuration dialogs: •...
• via the fieldbus interface (only for Bus Terminal controllers for PROFIBUS, CANopen and Ethernet) Online change The Bus Terminal Controllers of the BX series and the BCxx50 support online change. This means that the PLC program is replaced with a new program without interrupting the program. The switch-over to the new program occurs after the task is completed.
Data can also be placed here that can be read or written via ADS by the controller. Allocated variables are not remanent data For the Bus Terminal Controllers of the BX series and the BCxx50 the allocated variables are not saved as remanent data. Reading/writing of allocated flags via ADS The flags may also be read via the controller and ADS.
Programming Retain data are located between VAR RETAIN and END_VAR. These data are stored in a NOVRAM and are consistent across the whole 2 kbyte range. The RETAIN data are stored in the NOVRAM after each cycle. For 2 kbyte approx. 2 ms are required (for 1 kbyte approx. 1 ms). The variables can be configured locally or globally.
Activation of the factory setting deletes everything, including the persistent data. Sample Program Click on the link (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207307659.zip) to download a sample program from this documentation. Local process image in delivery state (default config) The process image of the Bus Terminal Controller consists of input, output and flag area. In addition, there are unallocated data without fixed address.
Page 84
Programming Addressing of the connected Bus Terminals The default setting is for all the connected Bus Terminals to be assigned to the local process image. Mapping within the Bus Terminal Controller is carried out according to the following rule: First all the complex Bus Terminals, in the sequence they are physically inserted, followed by the digital Bus Terminals which are filled to a byte.
Programming TwinCAT PLC - Error codes Error type Description PLC compiler error Maximum number of POUs (...) exceeded PLC compiler error Out of global data memory ... Error POUs For each function block one POU (process object unit) is created. 256 function blocks are available by default.
Page 86
Programming Fig. 77: Controller settings Changing these settings will deactivate online changes. Global memory error Fig. 78: Global memory insufficient 2 x 16 kbyte of data are available by default. If large data quantities are to be used, this range should be increased. A maximum of 14 data segments are possible for the BX. Fig. 79: Menu path Projects / Options / Build Version: 2.1.0 BX8000...
Mapping the Bus Terminals The precise assignment of the byte-oriented Bus Terminals may be found in the configuration guide for the particular bus terminal. This documentation is available on the Beckhoff Products & Solutions CD or on the Internet under http://www.beckhoff.de. Byte oriented Bus Terminals...
Programming Local process image in the TwinCAT configuration The TwinCAT configuration (TwinCAT CONFIG) enables free mapping between fieldbus, K-bus and PLC variables. Variables can be linked independent of their address via the System Manager. Fig. 81: Changing variable links Fig. 82: Linking a variable with an input In the default configuration all Bus Terminals are assigned fixed addresses.
The PLC LED lights up green once a valid boot project is available on the BX/BCxx50. In the Bus Terminal controllers of the BX series, the PLC LED flashes orange while boot project is created. The PLC LED lights up orange if no boot project is available on the BX.
Page 90
Programming Due to the fact that another variable type (INT) follows the first byte, in the BX/BCxx50 it was assigned the next free even address. In order to achieve the same data structure on both systems, a dummy byte has to be inserted in the PC project (see example 2).
Programming 5.12 Up- and downloading of programs The Bus Terminal Controller has a memory for the source code. It can be used for storing the program, the task configuration, and the libraries. Should the memory be insufficient, the source code may be stored without task configuration and libraries.
Page 92
Programming Source code only: the prx file with information on the online change is transferred. Login via online change is possible (the PLC does not stop). All files: as Source code only, plus all required libraries. Source code only (compile info excluded): only the prx file is transferred. Login is only possible when the PLC stops.
Page 93
Programming Uploading a program For uploading the program code again, open a new file in PLC Control. Then click on the PLC button. Fig. 87: Uploading a program Select the data transfer route: • BCxx50 or BX via AMS, if you are connected to the Bus Terminal Controller via the fieldbus, or •...
5.13.1 Libraries overview Various libraries are available for the Bus Terminal Controllers (Bus Coupler with PLC functionality: BXxxxx) (see Beckhoff Information System). Download To download the libraries click on the link. Please copy the libraries to directory TwinCAT\PLC\LIB. • Standard (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207309835.zip) •...
Programming 5.13.2 TcBaseBX 5.13.2.1 System task information VAR_GLOBAL SystemTaskInfoArr : ARRAY[1..2] OF SYSTEMTASKINFOTYPE; END_VAR System flags are implicitly declared variables. Using the Input Assistant, a variable SystemTaskInfoArr can be found under system variables. This variable is a field with four structures of type SYTEMTASKINFOTYPE [} 97].
Page 98
Programming numberOfTasks : BYTE; onlineChangeCount : UINT; bootDataFlags : BYTE; systemStateFlags : WORD; END_STRUCT END_TYPE Legend runTimeNo: specifies the number of the runtime system (1). projectName: project name as STRING. numberOfTasks: number of tasks contained in the runtime system (max. 2). onlineChangeCount: number of online changes since the last complete download. bootDataFlags: Reserved systemStateFlags: Reserved.
Page 99
T#1000 ms * BC9050, BC9020, BC9120, BX9000 Register access port 100 On the Bus Terminal Controllers of the BX series, and on the BCxx50/xx20, the ADS port number for register communication is fixed at 100. Index group Index offset (value range)
Page 100
Programming 5.13.2.5.3 Controlling the Bus LED The BX8000 has no standard fieldbus interface. The BUS LED on the BX8000 therefore has no meaning and is always switched off. You can now switch this LED on from your PLC project using ADSWRITE. The following states exist - OFF, GREEN, RED, ORANGE.
Page 101
Programming Functions Name Description Reading data from the COM buffer F_ComPortRead [} 101] Writing data into the COM buffer F_ComPortWrite [} 101] Supported baud rates Baud rate [baud] COM 1 COM 2 1200 2400 4800 9600 19200 38400 57600 115200 Further helpful function blocks can be found in TcComPortBX.lbx [} 112]. •...
Programming Return value Meaning > 0 Number of bytes that is to be copied from the COM buffer into the PLC. 0x8000 Memory overflow COM Port Write Fig. 91: Function block F_COMPORTWRITE FUNCTION F_COMPORTWRITE VAR_INPUT hCom :INT; cbTxBuffer :UINT; pTxBuffer :UDINT; Legend hCom: is connected with the iHandle of FB_COMPORTOPEN cbTxBuffer: Number of data bytes that were copied into the COM buffer.
Programming Legend bOpen: rising edge starts the function block stComConfig [} 104]: COM interface data structure VAR_OUTPUT bBusy :BOOL; bErr :BOOL; iErrId :WORD; iHandle :WORD; Legend bBusy: The function block is active as long it is TRUE. bErr: Error bit. iErrId: Error number. iHandle: pointer transfer. Return parameter iErrId Meaning No error...
Page 104
Programming Legend bBusy: The function block is active as long it is TRUE. bErr: Error bit. iErrId: Error number. Return parameter iErrId Meaning No error > 0 error number (#not documented#) 5.13.2.6.4 ComConfig data structure The settings for the serial interfaces of the BX are transferred with the following data structure. TYPE ST_COMConfig: STRUCT ...
Page 105
Programming 5.13.2.6.5 Example ST sample program Download (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207320715.zip) PROGRAM MAIN (* EXAMPLE - BRIDGE between PIN 7 and 8 from X01 COM 2 Port*) fb_COMPortOpen_1 : FB_COMPortOpen; stCOMConfig_1 : ST_COMConfig; hCOM : WORD; Result_R : INT; Result_W : INT; Var_M : ARRAY[0..9] OF BYTE:=11,22,0,33,0(6); Var_R : ARRAY[0..9] OF BYTE; Value : INT; Counter_V : BYTE; (* It is all OK, this value counts up *) i : INT; i_k : INT; fbTimer : TON; END_VAR stCOMConfig_1.cbRxBufferLen :=300; stCOMConfig_1.cbTxBufferLen :=300; stCOMConfig_1.dwMode :=0; stCOMConfig_1.BaudRate :=19200; stCOMConfig_1.eCommPort :=COM2; stCOMConfig_1.eDataBits:=EIGHT_DATABITS; stCOMConfig_1.eParity:=EVEN; stCOMConfig_1.eStoppBits:=ONE_STOPPBIT; CASE i OF (* Open Port *) 0: fb_COMPortOpen_1(bOpen:=TRUE , stCOMConfig:=stCOMConfig_1); IF NOT fb_COMPortOpen_1.bBusy THEN IF NOTfb_COMPortOpen_1.bError THEN hCOM:=fb_COMPortOpen_1.iHandle ; i:=i+1; ELSE ...
Programming 101: ; (*ERROR send data*) 102: i:=1; (*WD ERROR no data receive*) END_CASE 5.13.2.7 BX debugging function These functions can be used for measuring command execution times in a PLC project. The unit is a tick. One tick corresponds to 5.12 µs. Start Debug Timer function Fig. 94: Function block F_STARTDEBUGTIMER Calling this function starts the timer.
Press button is still visible in the program. Please take account of this in your application. For example, the switch should only be evaluated after a short delay by starting a timer with falling edge from bit 15. Download sample ST program https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207322891.zip 5.13.2.9...
Page 108
Programming Return parameter Meaning No error > 0 Error number ST sample program Download https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207325067.zip PROGRAM MAIN fb_DispWrite1: FB_DispWrite; i: INT; udiCounter: UDINT; strCounter: STRING; strLine: STRING; k: INT; END_VAR CASE i OF 0: strCounter:=CONCAT('Counter :',UDINT_TO_STRING(udiCounter)); fb_DispWrite1(bWrite:=TRUE , nRow:=1 ,sData:=strCounter ); IF NOT fb_DispWrite1.bBusy THEN IF NOTfb_DispWrite1.bErr THEN fb_DispWrite1(bWrite:=FALSE); udiCounter:=udiCounter+1; i:=1; END_IF END_IF 1: fb_DispWrite1(bWrite:=TRUE , nRow:=2 , sData:=strLine); IF NOT fb_DispWrite1.bBusy THEN IF NOTfb_DispWrite1.bErr THEN fb_DispWrite1(bWrite:=FALSE); k:=k+1; strLine:=REPLACE(' ','#',1,k);...
EN: Rising edge sets the time to the value available at the PDT input. PDT: Date and time to be set. VAR_OUTPUT Q :BOOL; CDT :BOOL; Legend CDT: Current time. Required libraries: • TcSystemBX.lb6 • TcBaseBX.lb6 Download sample ST program (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207329419.zip) PROGRAM MAIN fbTimer: TON; fbRTC: RTC; END_VAR fbTimer(PT:=t#60s,IN:=NOT fbTimer.Q); IF fbTimer.Q THEN fbRTC; END_IF BX8000 Version: 2.1.0...
Programming Do not call the RTC function block in every PLC cycle Calling the RTC block increases the cycle time by approx. 5 ms, due to the data conversion into a TIME AND DATE variable. The function block should therefore not be called during each PLC cycle. Alternatively, you can read the time via an ADS function block.
Page 111
16,000 bytes WRITE: Data offset and data length more than 16,000 bytes 0x31440708 CRC error in the data memory 0x31470708 Writing of data is not yet complete Required libraries: • TcSystemBX.lb6 • TcBaseBX.lb6 Download sample ST program (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207331595.zip) BX8000 Version: 2.1.0...
Programming 5.13.4 TcComPortBX 5.13.4.1 TcComPortBX overview Required libraries: • TcBaseBX • TcSystemBX Overview Name Description BK8x00 COM port function block, communication with Bus Coupler BK8x00 or fb_BX_BK8x00 Master BC8x00 [} 112] BK8x00 COM port function block, communication with PC. A BK8x00 is simulated. fb_BX_BK8x00 Slave [} 112] Name...
Page 113
RS485 communication PIN assignment FB settings: When using the RS485 connection it is important that the stCOMConfig variable is set to 1 and that the COM2 interface is selected. BX COM2 RS485 BK8000 ST example program Download (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207333771.zip) BX8000 Version: 2.1.0...
Programming Required material: • BX3100 + Bus Terminal • BK8100, KL1xx8, KL2xx8, KL9010 • Serial cable, PIN assignment: see sample program 5.13.4.3 BK8x00 - FB Slave COM-Port With this function block, the PC (TwinCAT or KS8000) can be connected with the BXxxxx via the serial interface.
Page 115
6 - 7 bridges ST sample program for BXxxx Download (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207335947.zip) System Manager file for TwinCAT as master. As shown in the figure, a Bus Coupler with Bus Terminals is configured. In this case, the type and number of Bus Terminals determines the data length. In principle, the type of Bus Terminal is irrelevant.
BX. Fig. 103: Function block FB_BX_COM_5 VAR_INPUT pstrEmo_IN :POINTER TO BYTE; pstrEmo_OUT :POINTER TO BYTE; ComConfig :ST_COMConfig; Legend pstrEmo_IN: Pointer to KL6inData5B pstrEmo_OUT: Pointer to KL6outData5B ComConfig [} 104]: Parameterization of the COM interface Download sample program in ST for linking COMLib and BX: (https://infosys.beckhoff.com/ content/1033/bx8000/Resources/zip/3207338123.zip) Version: 2.1.0 BX8000...
Pointer to ModbusPCComInData pstrEmo_OUT: Pointer to ModbusPCComInData ComConfig [} 104]: Parameterization of the COM interface Download sample program in ST for linking ModbusRTU and BX: (https://infosys.beckhoff.com/ content/1033/bx8000/Resources/zip/3207340299.zip) Download sample program in ST for linking ModbusRTU version 2 and BX: (https:// infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3207342475.zip)
Page 118
If the interface is closed, this bit is set. bError: There is an error. iErrorId: Error code (see FB_COMPortOpen) [} 102] Download sample program in ST for linking ModbusRTU and BX: (https://infosys.beckhoff.com/ content/1033/bx8000/Resources/zip/3207344651.zip) The sample requires the ModbusRTU library! 5.13.4.7 Further samples 5.13.4.7.1 BX COM port as ModbusRTU master...
Page 119
The reaction times depend on the set task time, the number of slaves, the length of the Modbus telegrams and the response time of the slaves. Beckhoff BK7300 Modbus slaves were used for determining the following table. Since this is not transferable to all slaves, the table should only be used for guidance.
Cimrex 12 RS485 2 -3 15 -16 *) active termination resistor is not required for short cable lengths (≤ 5 m) and low baud rates (≤19200 baud) Download sample program in ST for the BX: (https://infosys.beckhoff.com/content/1033/bx8000/ Resources/zip/3207340299.zip) Download sample with Cimrex panel: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207353355.zip) The example requires the ModbusRTU, TcComPortBC and TcBaseBX libraries.
Page 121
The RK512 protocol can exchange data with a distant station via the COM1 or COM2 interface of the BX controller. Documentation for the RK512 function block can be found in the Beckhoff Information System. The serial PC interface is simulated via the 64 byte emulation of the BX controller.
5.13.5.1 Overview The Bus Terminal Controllers of the BX series support the TwinSAFE Bus Terminals when the following conditions are met: • At the Bus Terminal Controller only one logic terminal is permitted. It must be connected to the K-bus interface, not the SSB.
FB_TwinSAFE_KLx904_input [} 123] Evaluation of TwinSAFE data sent from a KL6904 to a KL1904 or KL2904 FB_TwinSAFE_KLx904_output [} 126] Download of the TwinSAFE library: (https://infosys.beckhoff.com/content/1033/bx8000/Resources/ zip/3207364235.zip) 5.13.5.2 FUNCTION F_GetVersionTcTwinSAFE Fig. 108: Function block F_GETVERSIONTCTWINSAFE This function can be used to read PLC library version information.
Programming The function block FB_TwinSAFE_KLx904_input can be used for evaluation of TwinSAFE data sent from a KL1904 or KL2904 to a KL6904. The input parameter is doubly linked to the SafetyIn data of a KL1904 or KL2904 in the System Manager. VAR_INPUT VAR_INPUT KLx904_SafetyIn AT%I* : TwinSAFE_Data; (* Additional link to "SafetyIn" *)
Programming Fig. 111: Linking the input data and select the corresponding SafetyIn variable in the dialog that follows. Fig. 112: Selecting the SafetyIn variable BX8000 Version: 2.1.0...
TwinCAT v2.10.0 Build > PC (i386) KLx904 TcTwinSAFE.Lib (Standard.lib, TcBase.Lib and TcSystem.Lib are integrated automatically) TwinCAT v2.10.0 Build > BX series KLx904 TcTwinSAFE.LBX (Standard.LBX, TcBaseBX.LBX and TcSystemBX.LBX are integrated automatically) 5.13.5.4 FUNCTION_BLOCK FB_TwinSAFE_KLx904_output Fig. 113: Function block FB_TWINSAFE_KLX904_output The function block FB_TwinSAFE_KLx904_output can be used for evaluation of TwinSAFE data sent from a KL6904 to a KL1904 or KL2904.
Programming PROGRAM MAIN fbTwinSAFE_KLx904_output : FB_TwinSAFE_KLx904_output; bOutput1_KL6904_Connection_to_113 : BOOL; bOutput2_KL6904_Connection_to_113 : BOOL; bOutput3_KL6904_Connection_to_113 : BOOL; bOutput4_KL6904_Connection_to_113 : BOOL; tCycleTime_KL6904_KL1904 : TIME; bConnection3_In_Run_2 : BOOL; END_VAR Fig. 114: Call of function block FB_TWINSAFE_KLX904_OUTPUT In the example the values of TwinSAFE terminals KL6904 and KL1904 are evaluated. Since no output signals are used in this connection, the outputs are always FALSE. Only tCycleTime and bConnectionInRun can be evaluated.
Programming Fig. 116: Linking the input data and select the corresponding SafetyQBx variable in the dialog that follows. Fig. 117: Selecting the corresponding SafetyQBx variable Version: 2.1.0 BX8000...
TwinCAT v2.10.0 Build > PC (i386) KLx904 TcTwinSAFE.Lib (Standard.lib, TcBase.Lib and TcSystem.Lib are integrated automatically) TwinCAT v2.10.0 Build > BX series KLx904 TcTwinSAFE.LBX (Standard.LBX, TcBaseBX.LBX and TcSystemBX.LBX are integrated automatically) 5.14 Program transfer via the serial interface Every Bus Terminal Controller can be programmed via the PC's RS232 interface.
Programming Fig. 120: Selecting the data transfer route - AMS PLC Control can be accessed via Online/Communication Parameters..Fig. 121: Selecting the device Version: 2.1.0 BX8000...
Error handling and diagnosis Error handling and diagnosis Diagnostics State of the K-bus An internal bus or Bus Terminal error is indicated in the K-Bus state. A more precise fault description can be obtained via a function block (in preparation). To this end, link the "K-Bus state" variable with your PLC program.
Error handling and diagnosis Fig. 123: Diagnostic LEDs for the PLC, the K-bus and the power supply. The DIAG LEDs are sub-divided as follows: • Bus: fieldbus diagnostics • PLC: PLC diagnostics • I/O: K-bus diagnostics The LEDs can be off, green, orange or red. Fig. 124: Diagnostic LEDs for the PLC and the K-bus.
Page 133
Error handling and diagnosis LED PLC - PLC diagnostics Meaning LED off PLC stop or no program available LED red Flashing - the set task time is exceeded from time to time On - the set task time is always exceeded Disable the red LED LED orange PLC running without boot project (only during the on cycle), LED flashes orange during...
Page 134
Error handling and diagnosis Error code for K-bus diagnostics Error Error Description Remedy code a rgument EMC problems • Check power supply for undervoltage or overvoltage peaks • Implement EMC measures • If a K-bus error is present, it can be localized by a restart of the coupler (by switching it off and then on again) EEPROM checksum error...
Error handling and diagnosis Diagnostics display During start-up, the display shows the current firmware version for approx. three seconds. If an error occurs during start-up, this will be indicated via a flash sequence of the associated LED. Configuration errors are shown in the display via TC-Config and an error number. In this case, please use the System Manager to check your hardware configuration or contact support.
Appendix Appendix Switching between controllers Switching from BCxx00 to BCxx50/BCxx20 File names In the Bus Terminal controllers of the BCxx50 and BCxx20 series, libraries have the extension *.lbx, programs have the extension *.prx. Flag variables The allocated flag variables • of the BCxx00 are assigned %MB0...%MB511 (except BC9000/BC9100: %MB0...%B4095). •...
Page 137
Appendix Switching from BCxx00 to BXxx00 File names In the Bus Terminal controllers of the BCxx00, libraries have the extension *.lbx, programs have the extension *.prx. Flag variables The allocated flag variables • of the BCxx00 are assigned %MB0...%MB511 (except BC9000/BC9100: %MB0...%B4095). •...
The program FirmwareUpdate.exe and the file TcRouterHelper.dll have to be in the same directory. Open the program by double-clicking on FirmwareUpdate.exe. Update for Bus Terminal Controllers BX series Select the appropriate device of - in this example "Serial interface (BX)". Fig. 125: Selecting a BX series Bus Terminal Controller Version: 2.1.0 BX8000...
Appendix BCxx50 series Select the corresponding device, in this case "Serial Interface". Fig. 126: Selecting a BC series Bus Terminal Controller BX and BCxx50 series Then select the COM port. Fig. 127: Select the COM port Open the file you wish to download. Fig. 128: Open the firmware file Start the download via the green 'traffic light'.
Controller. The data from the memory are saved in a BIN file and can be loaded into an identical controller. The CFC client runs on Windows 9x, NT, 2000 and XP and is completely independent of TwinCAT. CFC client (https://infosys.beckhoff.com/content/1033/bx8000/Resources/zip/3238793995.zip) (Note: The DLLs have to be registered manually via regsvr32) When the CFC client is started, the COM parameters have to be set first.
Appendix Fig. 131: Call the port setup Select the required setting. Fig. 132: Set the COM parameters Before opening the COM port, a physical connection to the BX Controller has to be established. Then open the COM port. Fig. 133: Open the COM port Use upload to create a copy of the BX memory and save it as a BIN file.
Appendix Fig. 134: Upload the BX memory content to a BIN file Use download to load the BIN file onto the BX controller. The controller starts automatically after a successful download. Fig. 135: Downloading a BIN file to the BX controller * The CFC server is available on the BX Controller range from firmware version 1.09. Version: 2.1.0 BX8000...
Appendix Sample programs - overview Denomination Description Example for controlling the display Display [} 107] Reading of the navigation switch from the PLC Navigation switch [} 106] Example for own menu with navigation switch and display Menu [} 78] Example for reading the real-time clock (RTC) via function blocks RTC [} 72] COM1 or COM2 interface as master with the BK8x00 protocol COM port - BK/BC8x00 master interface...
Supply voltage Us 24 V (Use a 4 A fuse or a Class 2 power supply to meet UL requirements!) Manufacturer Beckhoff Automation GmbH CE mark Conformity mark UL mark Mark for UL approval. UL stands for the Underwriters Laboratories Inc., the leading certification organization for North America, based in the USA.
Appendix Test standards for device testing EMC immunity EN 61000-6-2 Electromagnetic emission EN 61000-6-4 Vibration / shock resistance Vibration resistance EN 60068-2-6 Shock resistance EN 60068-2-27 BX8000 Version: 2.1.0...
Beckhoff's branch offices and representatives Please contact your Beckhoff branch office or representative for local support and service on Beckhoff products! The addresses of Beckhoff's branch offices and representatives round the world can be found on her internet pages: http://www.beckhoff.com You will also find further documentation for Beckhoff components there.
Page 147
List of illustrations List of illustrations Fig. 1 Bus Terminal Controllers of the BX series................... Fig. 2 BX8000 ............................Fig. 3 The principle of the Bus Terminal ....................Fig. 4 BX3100, BX5100, BX5200, BX9000.................... Fig. 5 BX8000 ............................Fig. 6 Released BX controller ........................
Page 148
List of illustrations Fig. 45 Structure of CAN/DeviceNet cable ZB5200................. Fig. 46 BK5151, EL6751 pin assignment ....................Fig. 47 FC51x2 ............................Fig. 48 BK51x0/BX5100 socket assignment.................... Fig. 49 LC5100 ............................Fig. 50 Pin assignment: M12 plug, fieldbus box ..................Fig. 51 Adding a further device........................
Page 149
Fig. 123 Diagnostic LEDs for the PLC, the K-bus and the power supply..........132 Fig. 124 Diagnostic LEDs for the PLC and the K-bus................132 Fig. 125 Selecting a BX series Bus Terminal Controller................138 Fig. 126 Selecting a BC series Bus Terminal Controller................139 Fig.