Академический Документы
Профессиональный Документы
Культура Документы
Project Name :
Example Solar 2 Axis ACS3XX Program
Architecture Document
TABLE OF CONTENTS:
1. INTRODUCTION ........................................................................................................................ 2
1.1 Scope of the document .................................................................................................... 2
1.2 Example Solar 2 Axis Program Overview ....................................................................... 2
1.3 Compatibility ..................................................................................................................... 2
1.4 Safety Instructions ............................................................................................................ 2
1.5 Reader.............................................................................................................................. 2
1.6 Contents ........................................................................................................................... 2
1.7 Related Documents and Program .................................................................................... 3
2. Configuration ............................................................................................................................ 4
2.1 What this chapter contains ............................................................................................... 4
2.2 Installing ABB Control Builder Plus AC500 ...................................................................... 4
2.3 ACS355 drive configuration.............................................................................................. 4
3. Customization ........................................................................................................................... 5
3.1 What this chapter contains ............................................................................................... 5
3.2 Getting Help...................................................................................................................... 5
3.3 Configuring the Modbus setting of the AC500 ................................................................. 5
3.4 Configuring the slave address of the drive....................................................................... 6
3.5 Adding another drive ........................................................................................................ 7
3.6 Configuring parameters to be read from the drive ........................................................... 7
3.7 Configuration of read parameters..................................................................................... 8
4. Function Blocks and Program structure................................................................................ 9
4.1 What this chapter contains ............................................................................................... 9
4.2 Architecture of Example Solar 2 Axis ACS3XX Program................................................. 9
4.3 Function Block programming overview ............................................................................ 10
4.4 Basic building blocks ........................................................................................................ 11
4.5 Position Function blocks................................................................................................... 12
4.6 Axis Function blocks......................................................................................................... 13
4.7 Axis backtracking Function block ..................................................................................... 14
4.8 Mode Manager and MODE Function blocks .................................................................... 15
4.9 Actuator Function blocks .................................................................................................. 16
4.10 TRACK Function blocks ................................................................................................... 18
4.11 Visualization ..................................................................................................................... 20
4.12 ExamplePM564_Solar_2Axis_ACS3XX Program............................................................ 21
5. REVISION HISTORY.................................................................................................................. 22
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
1. INTRODUCTION
This document describes the software architecture of the Solar application designed for the
Control Builder Plus V2.2.0 software. Functional description of the Solar library is available in
Solar_AC500_App_V21 (Beta3-internal version) document [1].
Example Solar 2 Axis ACS3XX program is designed for controlling and monitoring of Solar
trackers. Solar trackers track the sun by 1 or 2 Dimensional movement (1 or 2 axes) of large
photovoltaic panels or mirrors for thermo solar plant types. Serial communication (MODBUS
RTU) is used to transfer and receive data between AC500 PLC and ACS355 Drives.
1.3 Compatibility
This manual is intended to be used with Example Solar 2 Axis program in AC500 PLC and
ACS355 drives. AC500-eCo can be used with Example Pm564 Solar 2 Axis ACS3XX
program with NOOA algorithm.
Follow all safety instructions delivered with the Solar example program:
• Read the complete safety instructions for the ACS355 drive before you install commission or
use the drive. The complete safety instructions are given at the beginning of the ACS355
user’s manual (3AUA0000066143 [English]).
• Read all safety instructions of the AC500 PLC. See System description AC500
(2CDC125015M0201 [English]) or the online help in CoDeSys (Help > Contents >Target
System > AC500 / S500 > Introduction > Overview > Regulations).
1.5 Reader
The manual is intended for people responsible for configuring and using the Example Solar 2
Axis ACS3XX program.
1.6 Contents
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
The manual is intended for people responsible for configuring and using the Example Solar 2
Axis ACS3XX program.
• Quick installation guide which describes the mechanical and electrical installation of
the CBP.
• ACS355 user’s manual which describes the ACS355 drive.
• System description AC500 which contains the safety instructions for the AC500 PLC.
• AC500 installation instructions which describes the installation of the
AC500 PLC.
• The online help in the CoDeSys program (see Using the online help in CoDeSys on
Page 15.)
• FMBA-01 user’s manual which describes the FMBA-01 Modbus adapter module.
• Drives Window Light 2 Software
• Solar Library Functional description manual Solar_AC500_App_V21 (Beta3-internal version)
• ACS Drives Library PS553 and its user manual
• Example Solar 2 Axis ACS3XX.Pro
• ExamplePM564 Solar 2 Axis ACS3XX.Pro
• ACS355_NS_Axis_Drive_Data.dwp and ACS355_EW_Axis_Sec_Drive_Data.dwp. These
are drives parameter list and Drives window light 2 software is required for it.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
2. Configuration
This chapter describes how to install ABB PS501 Control Builder Plus on your computer, and
how to configure the ACS355 drive and AC500 PLC for use.
The instructions in this chapter are intended to be used after the mechanical and electrical
Installation has been completed, as explained in AC500 and ACS355 quick
Installation guide.
Instructions for optional configuration and customization are given in chapter
Customization.
Drives window light 2 Software is used to configure ACS355 drives. User needs to install this
software for configuration. Drives window light 2 software can be downloaded from www.
(Exact location needs to be updated). Drive keypad can be used for configuration.
Solar NS Axis primary and Solar EW Axis secondary drive parameter list are attached.
ACS355 Drive parameter list are saved as ACS355_NS_Axis_Drive_Data .dwp and
ACS355_EW_Axis_Sec_Drive_Data .dwp. User can use this parameter list to set up drive
parameters. All motor related parameters must have to be configured by the user as per actual
configuration. User can decide FMBA station ID and set it accordingly in drive.
User can set ACS355 drive parameters for the Modbus communication using drive window
light 2 or keypad. ACS355 drive parameter list and values are as follows
Parameter Name Value
1001 EXT1 COMMANDS COMM (10)
1102 EXT1/EXT2 SEL COMM (8)
1103 REF1 SEL COMM (8)
1604 FAULT RESET SEL COMM (8)
2201 ACC/DEC 1/2 SEL NOT SEL (0)
3018 COMM FAULT FUNC FAULT (1)
5302 EFB STATION ID 2 This parameter indicates slave
ID and needs to be changed for
each slave.
5303 EFB BAUD RATE 19.2kbit/s (192)
5304 EFB PARITY 8 NONE 1 (1)
5305 EFB CTRL PROFILE ABB DRV FULL (2)
5310 EFB PAR 10 101
5311 EFB PAR 10 303
5312 EFB PAR 10 305
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
3. Customization
For Example solar 2 axis ACS3XX program is using ACS Drives Library PS553 for Modbus
communication with drives,
User can change the Modbus settings, but they have to be identical in the drive and the
AC500.
1. Select the Interfaces from left hand panel from CBP.
2. Right Click COM1 and select Plug Device. A new window will open and then select COM1 –
Modbus.
3. In the right pane (Module parameters), configure the following parameters:
Name Value
RTS control Telegram
Baud Rate 19.2kbit/s
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Parity None
Data Bits 8
Stop Bits 1
Operation Mode Master
Address 0
Note: For AC500 PLCs with firmware version 2.0 or higher, use ABB Control Builder Plus to
set
up the bus parameters. To open ABB Control Builder Plus, go to the Windows Start menu and
open Programs > ABB > ABB Control Builder Plus.
The default slave address of the drive is 2, but if several drives are used, the address must
be unique in each drive.
On the drive side, you can choose the slave address in ACS3xx drives with parameter
53.02 EFB STATION ID. You can use the control panel for changing the parameter value.
For instructions, see chapter Control panels in ACS355 user’s manual (3AUA0000066143
[English]).
To configure the slave address in CoDeSys, follow the instructions below:
1. In CoDeSys, in the left pane, select the POUs tab.
2. Click Example Solar 2 Axis (PRG).
3. In the Modbus RTU communication function block, change SLAVE to match the Modbus
slave
number.
For the update to take effect, follow the steps below:
4. Click Project > Rebuild all.
5. Click Online > Login.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
The below instructions detail how to copy the program and the visualizations for another
drive. The below image shows what the structure of the function blocks looks like when
there are multiple drives
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
The ACS3xx drive parameters 53.10…53.17 determine which parameters are read from
the drive. Give the values in the format XXYY, where XX is the parameter group and YY is
the parameter index of the parameter to be read. For example, the value 104 corresponds
to parameter 01.04 CURRENT.
Set parameter 53.10 to either 101 (calculated motor speed) or 103 (calculated drive output
frequency). You can freely choose which parameters to map to parameters 53.11…53.17.
For instructions on how to set parameter values, see ACS355 user’s manual
(3AUA0000066143 [English]).
If more than three parameters are configured to be read, change the value of
NVAR_READ in the ACS3XX_COM_MOD_RTU function block as instructed below.
1. In CoDeSys, go offline by clicking Online > Logout.
2. In the ACS3XX_COM_MOD_RTU function
block, change the value of NVAR_READ to
correspond to the number of parameters
read + 1 (the number includes the status
word).
3. Go back online by clicking Online > Login.
An Online Change dialog opens.
4. Click Yes.
The visualization is updated to reflect the changes made.
5. To keep the changes for the next reboot, click Online > Create boot project.
In this example, three parameters are configured to be read from an ACS355 drive by the
Function block. The following values are given to parameters 53.10…53.16:
53.11 104 01.04 CURRENT CURRENT Measured motor current (1 = 0.1 A).
53.12 305 03.05 FAULT WORD 1 A 16-bit data word that indicates faults in the
drive.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
This chapter presents an overview of the function blocks of the Solar Library.
Program is prepared for two axis and all interconnection of the different function blocks is
already done. User can download it in AC500 PM583 and test its functionality.
1. It is prepared for 2 Axis with Solar_NS_AXIS as primary and
SOLAR_EW_AXIS_SEC as secondary axis. Global variables and Visualization is
created for these 2 Axis.
2. CD522 is used for encoder feedback for the both axis.
3. NREL is used to calculate solar position. Its outputs connected to the both axis.
4. Position Control used to achieve position effectively.
5. All programs are called task configuration.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Function block programming allows a modular design and customization for the
requirements of the application in question. Different configurations are possible and
accordingly Function blocks are selected to construct the program.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Example Solar 2 Axis ACS3XX Program can be divided into following basic blocks. Each basic
block contains one or more Function blocks, and are selected depending on the configuration
selected.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Functions blocks are selected depending on the configuration and needs to be connected to
the other function blocks in particular fashion. This chapter deals with the settings and
connections of the different function blocks
Tracker position can be measured by one of the following Function blocks. It depends on the
type of encoder feedback used.
IO_ENCODER Incremental Encoder and Inductive sensor for Z Pulse
CD_522 ENCODER Incremental Encoder
CD522_SSI GRAY Absolute Encoder
DC_541 ENCODER Incremental Encoder
Depending on the module used, respective PRG needs to be called in PLC_PRG. All
variables are already defined and connected to the appropriate blocks.
CD522 is used for encoder feedback for both (NS Primary and EW SEC axis), hence
PRG_NS_CD522 and PRG_EW_SEC_CD522 are called in PLC_PRG program.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Function calculates Axis angle depending on Azimuth, Elevation and Alignment corrections.
These programs needs to be called with Solar track (i.e. SOLAR_NREL or SOLAR_NOAA
program).
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
This function calculates the optimum tracker position to reduce shadowing by optimizing sun
panel position, when sun position gets low (early morning + late evening).
This program needs to be called with Solar track (i.e. SOLAR_NREL or SOLAR_NOAA
program). All variables are defined as global variables.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
This program needs to be called with Solar track (i.e. SOLAR_NREL or SOLAR_NOAA
program)
Mode manager program contains 5 different modes depending on the functionality. Modes and
respective primary and secondary axis programs are as follows
All variables are defined in global variables and interconnections with the other functions
blocks are already done in PRG_MODE_NS (for NS_AXIS_PRIM) and
PRG_MODE_EW_SEC (for EW_AXIS_SEC).
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
Actuator Function blocks are used to position the tracker. It consist of following Function
blocks
SOLAR_POSITION_CTRL is used when motors and drives are used to move tracker.
SOLAR_HYD_CTRL is used when two pistons are used to move tracker.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
All variables are defined as global variables. All interconnections with the other function blocks
are already done.
NOTE: Please note that for secondary axis, either we can use PRG_EW_SEC_POS_CTRL
or PRG_HYD_POS_CTRL as all variables of PRG_HYD_POS_CTRL are connected to EW
Secondary Axis. If PRG_HYD_POS_CTRL has to be used for primary axis, then all variables
need to be changed.
All these Position and HYD control blocks needs to be called in PLC_PRG.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
All variables are defined as global variables. All interconnections with the other function blocks
are already done.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
All other remaining Function blocks are called in PLC_PRG.This has be called in 5ms cyclic
task.
4.11 Visualization
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
B. Right hand corner contains Position control status. It shows the status of the
position control.
C. Middle portion contains Modbus communication settings. Modbus communication
established from here.
D. Lower portion contains additional commands required for Mode manager. E.g.
Type mode for calibration.
Download with Example Solar 2 Axis program in AC500 PM583 and put it in RUN mode. Once
in RUN state, follow the following procedure
But once the tracker is fully commissioned, user needs to ensure that these
variables are set to TRUE as soon as PLC goes in RUN state. This will enable the
communication to start automatically as soon as PLC goes in RUN state.
__________________________________________________________________________
Copyright © ABB Oy, Drives
Example Program UNO document
5. REVISION HISTORY
__________________________________________________________________________
Copyright © ABB Oy, Drives