SPLCFILE.docx

144
\

Transcript of SPLCFILE.docx

\

VARIABLE TORQUE LOADS:Many types of loads require reduced torque when driven at speeds less than the base speed of the load. Conversely, such loads may require increased torque when driven at speeds greater than the base speed of the load. These are classified as variable torque loads. Many variable torque loads decrease with the square of the speed. This is characteristic of centrifugal pumps, and certain types of fans and blowers. Typically, as the speed decreases, the torque decreases with the square of the speed and the horsepower decreases with the cube of the speed.

CONSTANT TORQUE LOADSWith constant torque loads, the torque loading is not a function of speed. Typical applications are: Traction drives, Conveyors, Positive displacement pumps and Hoists. As the speed changes, the load torque remains constant and the horsepower changes linearly with speed. Constant torque loads cause motors to draw relatively high current at low speeds when compared to variable torque applications. This is why the same size drive may have a lower HP rating for Constant Torque applications

We had documentation at one time.Sound familiar? Have you suddenly found changes that have been made in thePLCbut not in the offline program? Nobody knows what happened.Unfortunately this is an all too common phenomena with the Siemens SIMATIC Step 7 software. The problems stem from the flexibility of the software both for downloading and editing the online program. If the person is not familiar with the software its very easy to get confused if the changes are being made on the computer or in the controller.How to solve this problem? Lets first of all review some basic terminology. After that is a step by step best practice when editing programs. Finally, well highlight the pitfalls and the indicators that tell you whether you are offline or online. This procedure applies to SIMATIC Step 7 version 5.4.TerminologyOffline program The program that is stored on the hard disk of the computer. This will contain the documentation. Its very important to keep a pristine copy of the offline program as the associated documentation is not stored in the PLC.Online program This is the program resident in the PLC.Download The act of taking the offline program on the computer and downloading it into the PLC.Upload Taking the program in the PLC and bringing it up to the computer. Doing this without having the associated offline program open will cause a loss of documentation.

Save Stores the open block onto the hard drive. Its important to realize that an edited block can be downloaded to the PLC without saving it offline. Note that this only saves the opened block and not any others that are concurrently open.These may seem like simple terms but its important to understand how theyre used in the Siemens environment.Here are some other terms that may come up.PG/PC This is Siemens way of referring to a PC or laptop running the SIMATIC software.Nodes Refers to any programmable device (in our case a PLC) in the network which will have its own unique address.Best PracticeThe best practice is to make sure you are working from an offline file. There really isnt any reason to be working on the program inside the PLC. Of course, this assumes that you have a good working copy to begin with. The golden copy of the program should live somewhere on a network server or have a dedicated place on one computer or laptop. Ive even heard of some companies using USB memory sticks to store the latest and greatest which is great but an original copy should still live on a computer that is backed up.1. Open the offline file from the File pull down menu and select Open or use the Open Project iconon the toolbar. In the dialog box select the project under the User Project tab. Click OK. You may have to select Browse to find it in the directory structure. Note if the Manager was closed with a project open then it will open back up to that project automatically.2. Expand the project tree down to the program files and select the Blocks folder.Good practice dictates that all blocks should be opened from here.3. Once changes have been made:1. Save the block to the hard disk by clicking the Save icon(or menu item File | Save)2. Download the block by clicking the Download icon(or menu item PLC | Download). If the block all ready exists in the PLC then it will confirm that you want to overwrite it1. Click Yes.3. Note that downloading from here only sends that one block to the PLC. It does not download the entire program.4. To monitor the block make sure to open it using steps 1 through 3 and then press the Monitor icon(or menu itemDebug| Monitor). The windows title bar will highlight a lovely shade of blue to indicate a connection to theCPU. Its important to note here that you are still working with the program on the computer and not the PLC. If the procedure in step 3 has not been followed then discrepancies can occur between what you are monitoring in the PLC and what is displayed in the SIMATIC software.Thats it. Following these simple steps will save a lot of headaches.

The Pitfalls and Warning SignsSo where do some people get lost? Here are some common mistakes and their warning signs. If you get any of these dialog boxes then you should really back out and start over because youre on the road to losing your documentation.

These dialog boxes are telling you that it cannot find the documentation for the local parameters and symbols. More then likely it will also not show any network comments or titles.The result of opening the block looks like this

This is an example void of documentation. Notice the local parameters all say TEMP. There are no comments or titles. There are no symbols so its all in direct addressing. The properly documented copy looks like this...

Pitfall #1 Using Accessible Nodes to Open BlocksThe Display Accessible Nodesselection under the PLC menu is a handy way to see what is connected to the network but it should never be used to open blocks. Opening blocks from here uploads it straight from the PLC and produces the warnings dialog boxes shown above.

Pitfall #2 Viewing Online from SIMATIC managerOnce a project is open and a connection to a PLC is established then selecting the Online button(menu View | Online) brings up a similar project tree showing the contents inside the PLC. The window title bar is highlighted in blue to indicate its online status. Working from this window presents less of a danger for losing documentation but it is confusing and could lead to problems. For instance if a block is renamed offline and then the old one is opened online then it will have no associated documentation.The proper way to view a block online is to open the block and select the Establish Connection to Configured CPU icon. Just make sure what you are viewing has been downloaded to the PLC.

Pitfall #3 Opening the Online PartnerIf an offline block is open then selecting the Open Offline/Online Partner icon(menu item File | Open Online) will switch it to the online version of the block for editing. Essentially this puts you in the same place as pitfall #2.ConclusionProgramming with SIMATIC Step 7 is different enough from other types of PLCs to throw off the casual user. Always working from the offline copy will make it less likely to screw up. Opening up a block from the accessible nodes window is always a no-no. Likewise, opening a block from a window that has a highlighted blue title bar will also cause potential problems. Be sure and read all dialog boxes especially the ones weve shown in the article. Avoid the pitfalls and keep that documentation. Mystery solved.Footnote:(1) Siemens dialog boxes have an option that says, Do not display this message again. This is handy for some annoying pop ups but it is really not a good idea to turn off important ones like warnings for overwriting blocks. These warnings are especially crucial if you are working on real machinery. If more then one person is using the software then you can reset these messages to display again by going to the SIMATIC Manager and select the menu Options | Customize. Click the General tab and press the Activate button. If its grayed out then all messages are set to display. Step 7 Lite, Step 7 and Step 7 Professional DifferencesupS7 Library Functions

Printer-friendly version ( categories: Siemens Software)I am glad that it reallySubmitted by Jema (not verified) on Thu, 2012-07-05 13:17.I am glad that it really works now so I am hoping this method is going to be very effective.wordpress developers

System Function BlocksNumberNameFamilyDescription

SFB 0CTUIEC_TCCount Up

SFB 1CTDIEC_TCCount Down

SFB 2CTUDIEC_TCCount Up/Down

SFB 3TPIEC_TCGenerate a Pulse

SFB 4TONIEC_TCGenerate an On Delay

SFB 5TOFIEC_TCGenerate an Off Delay

SFB 8USENDCOM_FUNCUncoordinated Sending of Data

SFB 9URCVCOM_FUNCUncoordinated Receiving of Data

SFB 12BSENDCOM_FUNCSending Segmented Data

SFB 13BRCVCOM_FUNCReceiving Segmented Data

SFB 14GETCOM_FUNCRead Data from a Remote CPU

SFB 15PUTCOM_FUNCWrite Data to a Remote CPU

SFB 16PRINTCOM_FUNCSend Data to Printer

SFB 19STARTCOM_FUNCInitiate a Warm or Cold Restart on a Remote Device

SFB 20STOPCOM_FUNCChanging a Remote Device to the STOP State

SFB 21RESUMECOM_FUNCInitiate a Hot Restart on a Remote Device

SFB 22STATUSCOM_FUNCQuery the Status of a Remote Partner

SFB 23USTATUSCOM_FUNCReceive the Status of a Remote Device

SFB 29HS_COUNTCOUNTERSCounter (high-speed counter, integrated function) (only exist on the CPU 312 IFM and CPU 314 IFM)

SFB 30FREQ_MESCOUNTERSFrequency Meter (frequency meter, integrated function (only exist on the CPU 312 IFM and CPU 314 IFM)

SFB 31NOTIFY_8PCOM_FUNCGenerating block related messages without acknowledgement indication

SFB 32DRUMTIMERSImplement a Sequencer

SFB 33ALARMCOM_FUNCGenerate Block-Related Messages with Acknowledgment Display

SFB 34ALARM_8COM_FUNCGenerate Block-Related Messages without Values for 8 Signals

SFB 35ALARM_8PCOM_FUNCGenerate Block-Related Messages with Values for 8 Signals

SFB 36NOTIFYCOM_FUNCGenerate Block-Related Messages without Acknowledgment Display

SFB 37AR_SENDCOM_FUNCSend Archive Data

SFB 38HSC_A_BCOUNTERSCounter A/B (integrated function) (only exist on the CPU 314 IFM)

SFB 39POSICONTPosition (integrated function) (only exist on the CPU 314 IFM)

SFB 41CONT_CICONTContinuous Control (only exist on the CPU 314 IFM)

SFB 42CONT_SICONTStep Control (only exist on the CPU 314 IFM)

SFB 43PULSEGENICONTPulse Generation (only exist on the CPU 314 IFM)

SFB 44ANALOGTEC_FUNCPositioning with Analog Output (only exist on the S7-300C CPUs)

SFB 46DIGITALTEC_FUNCPositioning with Digital Output (only exist on the S7-300C CPUs)

SFB 47COUNTTEC_FUNCControlling the Counter (only exist on the S7-300C CPUs)

SFB 48FREQUENCTEC_FUNCControlling the Frequency Measurement (only exist on the S7-300C CPUs)

SFB 49PULSETEC_FUNCControlling Pulse Width Modulation (only exist on the S7-300C CPUs)

SFB 52RDRECDPReading a Data Record

SFB 53WRRECDPWriting a Data Record

SFB 54RALRMDPReceiving an Interrupt

SFB 60SEND_PTPTEC_FUNCSending Data (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 61RECV_PTPTEC_FUNCReceiving Data (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 62RES_RECVTEC_FUNCDeleting the Receive Buffer (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 63SEND_RKTEC_FUNCSending Data (RK 512) (only exist on the S7-300C CPUs)

SFB 64FETCH_RKTEC_FUNCFetching Data (RK 512) (only exist on the S7-300C CPUs)

SFB 65SERVE_RKTEC_FUNCReceiving and Providing Data (RK 512) (only exist on the S7-300C CPUs)

SFB 75SALRMDPSend interrupt to DP master

SFB 81RD_DPARIO_FUNCTRead Predefined Parameter

System Function CallsNumberNameFamilyDescription

SFC 0SET_CLKCLK_FUNCSet System Clock

SFC 1READ_CLKCLK_FUNCRead System Clock

SFC 2SET_RTMCLK_FUNCSet Run-time Meter

SFC 3CTRL_RTMCLK_FUNCStart/Stop Run-time Meter

SFC 4READ_RTMCLK_FUNCRead Run-time Meter

SFC 5GADR_LGCIO_FUNCTQuery Logical Address of a Channel

SFC 6RD_SINFODB_FUNCTRead OB Start Information

SFC 7DP_PRALDPTrigger a Hardware Interrupt on the DP Master

SFC 9EN_MSGCOM_FUNCEnable Block-Related, Symbol-Related and Group Status Messages

SFC 10DIS_MSGCOM_FUNCDisable Block-Related, Symbol-Related and Group Status Messages

SFC 11DPSYC_FRDPSynchronize Groups of DP Slaves

SFC 12D_ACT_DPDPDeactivation and activation of DP slaves

SFC 13DPNRM_DGDIAGNSTCRead Diagnostic Data of a DP Slave (Slave Diagnostics)

SFC 14DPRD_DATDPRead Consistent Data of a Standard DP Slave

SFC 15DPWR_DATDPWrite Consistent Data to a DP Standard Slave

SFC 17ALARM_SQPMC_FUNCGenerate Acknowledgeable Block-Related Messages

SFC 18ALARM_SPMC_FUNCGenerate Permanently Acknowledged Block-Related Messages

SFC 19ALARM_SCPMC_FUNCQuery the Acknowledgment Status of the last ALARM_SQ Entering State Message

SFC 20BLKMOVMOVECopy Variables

SFC 21FILLMOVEInitialize a Memory Area

SFC 22CREAT_DBDB_FUNCTCreate Data Block

SFC 23DEL_DBDB_FUNCTDelete Data Block

SFC 24TEST_DBDB_FUNCTTest Data Block

SFC 25COMPRESSDB_FUNCTCompress the User Memory

SFC 26UPDAT_PIIO_FUNCTUpdate the Process Image Update Table

SFC 27UPDAT_POIO_FUNCTUpdate the Process Image Output Table

SFC 28SET_TINTPGM_CNTLSet Time-of-Day Interrupt

SFC 29CAN_TINTPGM_CNTLCancel Time-of-Day Interrupt

SFC 30ACT_TINTPGM_CNTLActivate Time-of-Day Interrupt

SFC 31QRY_TINTPGM_CNTLQuery Time-of-Day Interrupt

SFC 32SRT_DINTPGM_CNTLStart Time-Delay Interrupt

SFC 33CAN_DINTPGM_CNTLCancel Time-Delay Interrupt

SFC 34QRY_DINTPGM_CNTLQuery Time-Delay Interrupt

SFC 35MP_ALMPGM_CNTLTrigger Multicomputing Interrupt

SFC 36MSK_FLTDIAGNSTCMask Synchronous Errors

SFC 37DMSK_FLTDIAGNSTCUnmask Synchronous Errors

SFC 38READ_ERRDIAGNSTCRead Error Register

SFC 39DIS_IRTIRT_FUNCDisable New Interrupts and Asynchronous Errors

SFC 40EN_IRTIRT_FUNCEnable New Interrupts and Asynchronous Errors

SFC 41DIS_AIRTIRT_FUNCDelay Higher Priority Interrupts and Asynchronous Errors

SFC 42EN_AIRTIRT_FUNCEnable Higher Priority Interrupts and Asynchronous Errors

SFC 43RE_TRIGRPGM_CNTLRe-trigger Cycle Time Monitoring

SFC 44REPL_VALDIAGNSTCTransfer Substitute Value to Accumulator 1

SFC 46STPPGM_CNTLChange the CPU to STOP

SFC 47WAITPGM_CNTLDelay Execution of the User Program

SFC 48SNC_RTCBCLK_FUNCSynchronize Slave Clocks

SFC 49LGC_GADRIO_FUNCTQuery the Module Slot Belonging to a Logical Address

SFC 50RD_LGADRIO_FUNCTQuery all Logical Addresses of a Module

SFC 51RDSYSSTDIAGNSTCRead a System Status List or Partial List

SFC 52WR_USMSGDIAGNSTCWrite a User-Defined Diagnostic Event to the Diagnostic Buffer

SFC 54RD_PARMIO_FUNCTRead Defined Parameters

SFC 55WR_PARMIO_FUNCTWrite Dynamic Parameters

SFC 56WR_DPARMIO_FUNCTWrite Default Parameters

SFC 57PARM_MODIO_FUNCTAssign Parameters to a Module

SFC 58WR_RECIO_FUNCTWrite a Data Record

SFC 59RD_RECIO_FUNCTRead a Data Record

SFC 60GD_SNDCOM_FUNCSend a GD Packet

SFC 61GD_RCVCOM_FUNCFetch a Received GD Packet

SFC 62CONTROLCOM_FUNCQuery the Status of a Connection Belonging to a Communication SFB Instance

SFC 63AB_CALLPLASTICSAssembly Code Block (only exists for CPU 614)

SFC 64TIME_TCKCLK_FUNCRead the System Time

SFC 65X_SENDCOM_FUNCSend Data to a Communication Partner outside the Local S7 Station

SFC 66X_RCVCOM_FUNCReceive Data from a Communication Partner outside the Local S7 Station

SFC 67X_GETCOM_FUNCRead Data from a Communication Partner outside the Local S7 Station

SFC 68X_PUTCOM_FUNCWrite Data to a Communication Partner outside the Local S7 Station

SFC 69X_ABORTCOM_FUNCAbort an Existing Connection to a Communication Partner outside the Local S7 Station

SFC 70GEO_LOGIO_FUNCTDetermine Start Address of a Module

SFC 71LOG_GEOIO_FUNCTDetermine the Slot Belonging to a Logical Address

SFC 72I_GETCOM_FUNCRead Data from a Communication Partner within the Local S7 Station

SFC 73I_PUTCOM_FUNCWrite Data to a Communication Partner within the Local S7 Station

SFC 74I_ABORTCOM_FUNCAbort an Existing Connection to a Communication Partner within the Local S7 Station

SFC 78OB_RTDIAGNSTCDetermine OB program runtime

SFC 79SETBIT_LOGCSet a Range of Outputs

SFC 80RSETBIT_LOGCReset a Range of Outputs

SFC 81UBLKMOVMOVEUninterruptible Block Move

SFC 82CREA_DBLDB_CTRLCreate a Data Block in the Load Memory

SFC 83READ_DBLDB_CTRLRead from a Data Block in Load Memory

SFC 84WRIT_DBLDB_CTRLWrite from a Data Block in Load Memory

SFC 85CREA_DBDB_FUNCTCreate a Data Block

SFC 87C_DIAGCOM_FUNCDiagnosis of the Actual Connection Status

SFC 90H_CTRLHF_FUNCTControl Operation in H Systems

SFC 100SET_CLKSCLK_FUNCSetting the Time-of-Day and the TOD Status

SFC 101RTMCLK_FUNCHandling runtime meters

SFC 102RD_DPARAIO_FUNCTRedefined Parameters

SFC 103DP_TOPOLDPIdentifying the bus topology in a DP master system

SFC 104CIRPGM_CNTLControlling CiR

SFC 105READ_SIPMC_FUNCReading Dynamic System Resources

SFC 106DEL_SIPMC_FUNCDeleting Dynamic System Resources

SFC 107ALARM_DQPMC_FUNCGenerating Always Acknowledgeable and Block-Related Messages

SFC 108ALARM_DPMC_FUNCGenerating Always Acknowledgeable and Block-Related Messages

SFC 112PN_INPROFIne2Update inputs in the user program interface of PROFInet components

SFC 113PN_OUTPROFIne2Update outputs in the user program interface of PROFInet components

SFC 114PN_DPPROFIne2Update DP interconnections

SFC 126SYNC_PIIO_FUNCTUpdate process image partition input table in synchronous cycle

SFC 127SYNC_POIO_FUNCTUpdate process image partition output table in synchronous cycle

S5-S7 Converting BlocksNumberNameFamilyDescription

FC 61GP_FPGPS5_CNVRTChange fixed point number to floating point number

FC 62GP_GPFPS5_CNVRTChange floating point number to fixed point number

FC 63GP_ADDS5_CNVRTAdd floating point numbers

FC 64GP_SUBS5_CNVRTSubtract floating point numbers

FC 65GP_MULS5_CNVRTMultiply floating point number

FC 66GP_DIVS5_CNVRTDivide floating point numbers

FC 67GP_VGLS5_CNVRTCompare floating point numbers

FC 68RAD_GPS5_CNVRTExtract root of floating point numbers

FC 69MLD_TGS5_CNVRTClock generator

FC 70MLD_TGZS5_CNVRTClock generator (timing element)

FC 71MLD_EZWS5_CNVRTMessage of first value with single flashing light, wordwise, A

FC 72MLD_EDWS5_CNVRTMessage of first value with double flashing light, wordwise, A

FC 73MLD_SAMWS5_CNVRTCollected message, wordwise (sound alert)

FC 74MLD_SAMS5_CNVRTCollected message, bitwise

FC 75MLD_EZS5_CNVRTMessage of first value with single flashing light, bitwise, A

FC 78MLD_EDWKS5_CNVRTMessage of first value with double flashing light, wordwise, A+M

FC 79MLD_EZKS5_CNVRTMessage of first value with single flashing light, bitwise, A+M

FC 80MLD_EDKS5_CNVRTMessageof first value with double flashing light, bitwise, A+M

FC 81COD_B4S5_CNVRTChange BCD number to 16 bit dual number

FC 82COD_16S5_CNVRTChange 16 bit dual number to BCD number

FC 83MUL_16S5_CNVRTMultiply 16 bit dual numbers

FC 84DIV_16S5_CNVRTDivide 16 bit dual numbers

FC 85ADD_32S5_CNVRTAdd 32 bit dual numbers

FC 86SUB_32S5_CNVRTSubtract 32 bit dual numbers

FC 87MUL_32S5_CNVRTMultiply 32 bit dual numbers

FC 88DIV_32S5_CNVRTDivide 32 bit dual numbers

FC 89RAD_16S5_CNVRTExtract roots of 16 bit dual numbers

FC 90REG_SCHBS5_CNVRTBi-directional shift register, bitwise

FC 91REG_SCHWS5_CNVRTBi-directional shift register, wordwise

FC 92REG_FIFOS5_CNVRTBuffer memory (FIFO)

FC 93REG_LIFOS5_CNVRTStack register (LIFO)

FC 94DB_COPY1S5_CNVRTCopy data block, direct assignment of parameters

FC 95DB_COPY2S5_CNVRTCopy data block, indirect assignment of parameterization

FC 96RETTENS5_CNVRTSave scratchpad memory

FC 97LADENS5_CNVRTLoad scratchpad memory

FC 98COD_B8S5_CNVRTChange BCD number to 32 bit dual number

FC 99COD_32S5_CNVRTChange 32 bit dual number to BCD number

FC 100AE_460_1S5_CNVRTRead analog value

FC 101AE_460_2S5_CNVRTRead analog value

FC 102AE_463_1S5_CNVRTRead analog value

FC 103AE_463_2S5_CNVRTRead analog value

FC 104AE_464_1S5_CNVRTRead analog value

FC 105AE_464_2S5_CNVRTRead analog value

FC 106AE_466_1S5_CNVRTRead analog value

FC 107AE_466_2S5_CNVRTRead analog value

FC 108RLG_AA1S5_CNVRTOutput analog value

FC 109RLG_AA2S5_CNVRTOutput analog value

FC 110PER_ET1S5_CNVRTRead and Write for extended periphery (direct assignment of parameters)

FC 111PER_ET2S5_CNVRTRead and Write for extended periphery (indirect assignment of parameters)

FC 112SINUSS5_CNVRTSine (x)

FC 113COSINUSS5_CNVRTCosine (x)

FC 114TANGENSS5_CNVRTTangent (x)

FC 115COTANGS5_CNVRTCotangent (x)

FC 116ARCSINS5_CNVRTArc sine (x)

FC 117ARCCOSS5_CNVRTArc cosine (x)

FC 118ARCTANS5_CNVRTArc tangent (x)

FC 119ARCCOTS5_CNVRTArc cotangens (x)

FC 120LN_XS5_CNVRTNatural logarithm ln (x)

FC 121LG_XS5_CNVRTDecade logarithm Iog (x)

FC 122B_LOG_XS5_CNVRTGeneral logarithm log (x) to basis b

FC 123E_H_NS5_CNVRTe to the power of n

FC 124ZEHN_H_NS5_CNVRT10 to the power of n

FC 125A2_H_A1S5_CNVRTAKKU 2 to the power of AKKU 1

IEC Function BlocksNumberNameFamilyDescription

FC 1AD_DT_TMIECPoint Math Add duration to a time

FC 2CONCATIECCombine two STRING variables

FC 3D_TOD_DTIECCombine DATE and TIME_OF_DAY to DT

FC 4DELETEIECDelete in a STRING variable

FC 5DI_STRNGIECData type conversion DINT to STRING

FC 6DT_DATEIECExtract the DATE from DT

FC 7DT_DAYIECExtract the day of the week from DT

FC 8DT_TODIECExtract the TIME_OF_DAY from DT

FC 9EQ_DTIECCompare DT for equal

FC 10EQ_STRNGIECCompare STRING for equal

FC 11FINDIECFind in a STRING variable

FC 12GE_DTIECCompare DT for greater than or equal

FC 13GE_STRNGIECCompare STRING for greater than or equal

FC 14GT_DTIECCompare DT for greater than

FC 15GT_STRNGIECCompare STRING for greater than

FC 16I_STRNGIECData type conversion INT to STRING

FC 17INSERTIECInsert in a STRING variable

FC 18LE_DTIECCompare DT for smaller than or equal

FC 19LE_STRNGIECCompare STRING for smaller than or equal

FC 20LEFTIECLeft part of a STRING variable

FC 21LENIECLength of a STRING variable

FC 22LIMITIECPoint Math Limit

FC 23LT_DTIECCompare DT for smaller than

FC 24LT_STRNGIECCompare STRING for smaller than

FC 25MAXIECPoint Math Select maximum

FC 26MIDIECMiddle part of a STRING variable

FC 27MINIECPoint Math Select minimum

FC 28NE_DTIECCompare DT for unequal

FC 29NE_STRNGIECCompare STRING for unequal

FC 30R_STRNGIECData type conversion REAL to STRING

FC 31REPLACEIECReplace in a STRING variable

FC 32RIGHTIECRight part of a STRING variable

FC 33S5TI_TIMIECData type conversion S5TIME to TIME

FC 34SB_DT_DTIECPoint Math Subtract two time values

FC 35SB_DT_TMIECPoint Math Subtract duration from a time

FC 36SELIECPoint Math Binary selection

FC 37STRNG_DIIECData type conversion STRING to DINT

FC 38STRNG_IIECData type conversion STRING to INT

FC 39STRNG_RIECData type conversion STRING to REAL

FC 40TIM_S5TIIECData type conversion TIME to S5TIME

PID Control BlocksNumberNameFamilyDescription

FB 41CONT_CICONTContinuous Control

FB 42CONT_SICONTStep Control

FB 43PULSEGENICONTPulse Generation

FB 58TCONT_CPCONTROLTemperature Continuous Controller

FB 59TCONT_SCONTROLTemperature Step Controller

Communication BlocksNumberNameFamilyDescription

FB 2IDENTIFYCP_300For checking deviceproperties

FB 3READCP_300Reads data from a data area of the communication partner specified by a name or index depending on the assignment of parameters for the job.

FB 4REPORTCP_300Allows unconfirmed transmission of variables by an FMS server.

FB 5STATUSCP_300allows status information to be requested from the communications partner on the specified FMS connection.

FB 6WRITECP_300Transfers data from a specified local data area to a data area on the communication partner.

FB 8USENDCP_300Uncoordinated Sending of Data

FB 9URCVCP_300Uncoordinated Receiving of Data

FB 12BSENDCP_300Sending Segmented Data

FB 13BRCVCP_300Receiving Segmented Data

FB 14GETCP_300Read Data from a Remote CPU

FB 15PUTCP_300Write Data to a Remote CPU

FB 20GETIOIO_FUNCTRead All Inputs of a DP Standard Slave/PROFINET IO Device

FB 21SETIOIO_FUNCTWrite All Outputs of a DP Standard Slave/PROFINET IO Device

FB 22GETIO_PARTIO_FUNCTRead a Part of the Inputs of a DP Standard Slave/PROFINET IO Device

FB 23SETIO_PARTIO_FUNCTWrite a Part of the Outputs of a DP Standard Slave/PROFINET IO Device

FB 55IP_CONFIGCP_300Transfers a configuration data block (CONF_DB) containing connection data for an Ethernet CP.

FB 63TSENDCOMMSending Data via TCP native and ISO on TCP

FB 64TRCVCOMMReceiving Data via TCP native and ISO on TCP

FB 65TCONCOMMEstablishing a Connection using TCP native and ISO on TCP

FB 66TDISCONCOMMTerminating a Connection using TCP native and ISO on TCP

FB 67TUSENDCOMMSending Data via UDP

FB 68TURCVCOMMReceiving Data via UDP

FC 1DP_SENDCP_300transfers data to the PROFIBUS CP

FC 2DP_RECVCP_300receives data on PROFIBUS

FC 3DP_DIAGCP_300used to request diagnostic information

FC 4DP_CTRLCP_300transfers control jobs to the PROFIBUS CP

FC 5AG_SENDCP_300data by means of a configured connection to the communication partner ( Set PG/PC Interface.

The following dialog box will open up displaying all the different interfaces (i.e. communication drivers).

Each cable has its own interface. For Ethernet select the TCP/IP interface for your computers network card. Be careful not to select your wireless Ethernet connection.To get it working quickly it is best to select the interface with the Auto designation. This will discover working settings and use them automatically.For the PC Adapter click on the Properties button and make sure the Station ParametersAddressis a unique network address. It should not conflict with existing PLC and slave devices on the network. Also, check under the Local Connection tab and make sure connection selection matches the port the cable is connected into.Once the proper interface is selected and the properties are set then click OK and use the Accessible Nodes window to check for successful communications. It should work. If not double-check the connection and cable. With the CP5512 and PC Adapter cables, you should use the MPI port, as this is the default connection for Siemens.If this doesn't work then I don't know what to tell you.DownloadingFirst, in order to enable the download menu commands, you must select theBlockfolder in the project's station you wish to download.

There are three methods of downloading.1. Partial download of selected blocks2. Full download of all blocks and system data3. Complete deletion of onlinePLCblocks and then downloading of all blocks and system dataPartial DownloadPartial downloads are used in existing projects where only one or more blocks will be downloaded. To perform this type of download select the block(s) you wish to download and then select the PLC > Download menu item or the download button.

Holding down the Ctrl key or the Shift key allows more then one block to be selected at a time. Be careful though as the order of download will occur in the order that the blocks were selected. This may mean that an error will occur if a block is called before it is downloaded.TheCPUwill need to be in Stop mode before downloading the System Data Block (SDB) as this is equivalent to a hardware configuration download. This is usually not necessary in a PLC that has all ready had its hardware configured. If you do download the system data, the following messages will prompt you through the transitions.

If the CPU is in Run mode then you will be prompted to Stop the CPU. The software will do the Run to Stop transition when you click OK.

After downloading the SDB you will be prompted to Run the CPU again.

Clicking Yes will automatically put the CPU back into run mode.Full DownloadTo download all the blocks at once make sure you are in the Block folder and select the Edit > Select All menu item. Click on the Download icon. You will be prompted to overwrite any existing blocks and if you want to load the system data (see above).Clearing the CPU Memory and then DownloadingThe partial and full download methods above will overwrite existing blocks but will not any blocks from memory. In order to completely delete the existing program in the CPU and download a new project select the Blocks folder and then use the PLC > Download User Program to Memory Card menu item.

The following dialog box will pop up prompting you about the deletion of all the blocks and project data in the PLC. Click Yes to perform the operation.

After this, follow the normal download procedure.UploadingThere are two methods for uploading. The first is when you have the original project and you want to preserve the symbols and comments. The second method, when you don't have the original project, will upload everything from theCPUbut will have no associated documentation (i.e. symbols and comments).Uploading to an Existing ProjectWith the existing project open, select the View > Online menu item.

This is the same as the Online button on the icon bar.

This will open up another window called the Online Partner. It shows the existing blocks inside the CPU. The Online version is indicated by the highlighted title bar.

There is a connection between these two versions so that uploading from the online partner makes sure to preserve all the symbols and comments. Be careful. After uploading, make sure to close the online partner and do all work from the offline version.To upload individual blocks, select them in the Online view and choose thePLC> Upload to PG menu item. For a full upload, select theBlockfolder and do the same.

Upload without an Existing ProjectFollow these steps when you do not have the original project but wish to upload the program for backup purposes. With an existing project open or a new blank project select thePLC > Upload Station to PGmenu selection.

In the next screen, fill in the slot the CPU is in (this is always 2 for S7-300) and the node address of the communication port on the CPU. In the case below we are talking to a CPU over MPI with node address 10.

After clicking OK, the whole contents of the PLC including all blocks and hardware configuration will be uploaded into a new station in the project.

While this project contains no documentation, it can be used as a backup to download later if needed.Step 7 Lite, Step 7 and Step 7 Professional DifferencesSTEP 7 LiteSTEP 7STEP 7 Professional

Configuring

PLCsS7-300/C7S7-300/S7-400/C7/WinAC

ModulesDigital, analog I/O, IFMcentralized onlyDigital, analog I/O, IFM,FM, CPcentralized anddistributed (DP)

Networking/communicationsNoTime-driven, cyclic data transmission between automation components;MPI, PROFIBUS or Industrial Ethernet

Distributed I/ONoYes

Alarm configuring (display->HMI)NoYes

Write/read to/from MMCYes, in CPU onlyYes, in CPU anddirect on PG/PC(updating of PLC operating system possible)

Export/importProgram, symbolsProgram, symbols,hardware configuration

Documentation functionIncludedIncluded -S7-DOCPROoption for standard-compliant documentation of the S7 project

Multi-language documentation of projectsYesYes

Multi-user engineeringNoYes

Programming

LanguagesLAD/FBD/STLLAD/FBD/STL andSTL sourcesAs Step 7+ S7-Graph (sequencer)/S7-SCL (textual high-level language)

Structured/symbolic programmingYes/YesYes/Yes

Check/establish program consistencyYes/YesYes/Yes

Standard libraries/user librariesYes/NoYes/Yes

Online functions

Online accessMPIMPI,Profibus, Option: Industrial Ethernet

Test functionsMonitor, control, forceMonitor, control, force,single step (debug)

Comparison function offline/onlineProgram,hardware configurationProgram

DiagnosticsSystem diagnosticsSystem diagnostics, report system fault, integrated process fault diagnostics in S7-Graph

Optional packages

Optional programming languagesNoneS7-Graph, S7-SCL, S7-HiGraph, CFCS7-HiGraph, CFC

Options for simulation, documentation, diagnostics and remote maintenanceS7-PLCSIM, S7-TeleserviceS7-PLCSIM, S7-Teleservice,S7-DOCPRO, S7-PdiagS7-Teleservice,S7-DOCPRO, S7-Pdiag(S7-PLCSIM is all ready included in package)

The Case of the Missing SIMATIC Step 7 DocumentationWe had documentation at one time.Sound familiar? Have you suddenly found changes that have been made in thePLCbut not in the offline program? Nobody knows what happened.Unfortunately this is an all too common phenomena with the Siemens SIMATIC Step 7 software. The problems stem from the flexibility of the software both for downloading and editing the online program. If the person is not familiar with the software its very easy to get confused if the changes are being made on the computer or in the controller.How to solve this problem? Lets first of all review some basic terminology. After that is a step by step best practice when editing programs. Finally, well highlight the pitfalls and the indicators that tell you whether you are offline or online. This procedure applies to SIMATIC Step 7 version 5.4.TerminologyOffline program The program that is stored on the hard disk of the computer. This will contain the documentation. Its very important to keep a pristine copy of the offline program as the associated documentation is not stored in the PLC.Online program This is the program resident in the PLC.Download The act of taking the offline program on the computer and downloading it into the PLC.Upload Taking the program in the PLC and bringing it up to the computer. Doing this without having the associated offline program open will cause a loss of documentation.

Save Stores the open block onto the hard drive. Its important to realize that an edited block can be downloaded to the PLC without saving it offline. Note that this only saves the opened block and not any others that are concurrently open.These may seem like simple terms but its important to understand how theyre used in the Siemens environment.Here are some other terms that may come up.PG/PC This is Siemens way of referring to a PC or laptop running the SIMATIC software.Nodes Refers to any programmable device (in our case a PLC) in the network which will have its own unique address.Best PracticeThe best practice is to make sure you are working from an offline file. There really isnt any reason to be working on the program inside the PLC. Of course, this assumes that you have a good working copy to begin with. The golden copy of the program should live somewhere on a network server or have a dedicated place on one computer or laptop. Ive even heard of some companies using USB memory sticks to store the latest and greatest which is great but an original copy should still live on a computer that is backed up.1. Open the offline file from the File pull down menu and select Open or use the Open Project iconon the toolbar. In the dialog box select the project under the User Project tab. Click OK. You may have to select Browse to find it in the directory structure. Note if the Manager was closed with a project open then it will open back up to that project automatically.2. Expand the project tree down to the program files and select the Blocks folder.Good practice dictates that all blocks should be opened from here.3. Once changes have been made:1. Save the block to the hard disk by clicking the Save icon(or menu item File | Save)2. Download the block by clicking the Download icon(or menu item PLC | Download). If the block all ready exists in the PLC then it will confirm that you want to overwrite it1. Click Yes.3. Note that downloading from here only sends that one block to the PLC. It does not download the entire program.4. To monitor the block make sure to open it using steps 1 through 3 and then press the Monitor icon(or menu itemDebug| Monitor). The windows title bar will highlight a lovely shade of blue to indicate a connection to theCPU. Its important to note here that you are still working with the program on the computer and not the PLC. If the procedure in step 3 has not been followed then discrepancies can occur between what you are monitoring in the PLC and what is displayed in the SIMATIC software.Thats it. Following these simple steps will save a lot of headaches.

The Pitfalls and Warning SignsSo where do some people get lost? Here are some common mistakes and their warning signs. If you get any of these dialog boxes then you should really back out and start over because youre on the road to losing your documentation.

These dialog boxes are telling you that it cannot find the documentation for the local parameters and symbols. More then likely it will also not show any network comments or titles.The result of opening the block looks like this

This is an example void of documentation. Notice the local parameters all say TEMP. There are no comments or titles. There are no symbols so its all in direct addressing. The properly documented copy looks like this...

Pitfall #1 Using Accessible Nodes to Open BlocksThe Display Accessible Nodesselection under the PLC menu is a handy way to see what is connected to the network but it should never be used to open blocks. Opening blocks from here uploads it straight from the PLC and produces the warnings dialog boxes shown above.

Pitfall #2 Viewing Online from SIMATIC managerOnce a project is open and a connection to a PLC is established then selecting the Online button(menu View | Online) brings up a similar project tree showing the contents inside the PLC. The window title bar is highlighted in blue to indicate its online status. Working from this window presents less of a danger for losing documentation but it is confusing and could lead to problems. For instance if a block is renamed offline and then the old one is opened online then it will have no associated documentation.The proper way to view a block online is to open the block and select the Establish Connection to Configured CPU icon. Just make sure what you are viewing has been downloaded to the PLC.

Pitfall #3 Opening the Online PartnerIf an offline block is open then selecting the Open Offline/Online Partner icon(menu item File | Open Online) will switch it to the online version of the block for editing. Essentially this puts you in the same place as pitfall #2.ConclusionProgramming with SIMATIC Step 7 is different enough from other types of PLCs to throw off the casual user. Always working from the offline copy will make it less likely to screw up. Opening up a block from the accessible nodes window is always a no-no. Likewise, opening a block from a window that has a highlighted blue title bar will also cause potential problems. Be sure and read all dialog boxes especially the ones weve shown in the article. Avoid the pitfalls and keep that documentation. Mystery solved.Footnote:(1) Siemens dialog boxes have an option that says, Do not display this message again. This is handy for some annoying pop ups but it is really not a good idea to turn off important ones like warnings for overwriting blocks. These warnings are especially crucial if you are working on real machinery. If more then one person is using the software then you can reset these messages to display again by going to the SIMATIC Manager and select the menu Options | Customize. Click the General tab and press the Activate button. If its grayed out then all messages are set to display.S7 Library FunctionsI couldn't find a complete listing of all the function blocks in the standard Siemens S7 Libraries so I made one myself. It helps me get a better overview of what is available. The complete listing is also available as anExcel spreadsheetso you can sort or adjust to your needs.System Function BlocksNumberNameFamilyDescription

SFB 0CTUIEC_TCCount Up

SFB 1CTDIEC_TCCount Down

SFB 2CTUDIEC_TCCount Up/Down

SFB 3TPIEC_TCGenerate a Pulse

SFB 4TONIEC_TCGenerate an On Delay

SFB 5TOFIEC_TCGenerate an Off Delay

SFB 8USENDCOM_FUNCUncoordinated Sending of Data

SFB 9URCVCOM_FUNCUncoordinated Receiving of Data

SFB 12BSENDCOM_FUNCSending Segmented Data

SFB 13BRCVCOM_FUNCReceiving Segmented Data

SFB 14GETCOM_FUNCRead Data from a Remote CPU

SFB 15PUTCOM_FUNCWrite Data to a Remote CPU

SFB 16PRINTCOM_FUNCSend Data to Printer

SFB 19STARTCOM_FUNCInitiate a Warm or Cold Restart on a Remote Device

SFB 20STOPCOM_FUNCChanging a Remote Device to the STOP State

SFB 21RESUMECOM_FUNCInitiate a Hot Restart on a Remote Device

SFB 22STATUSCOM_FUNCQuery the Status of a Remote Partner

SFB 23USTATUSCOM_FUNCReceive the Status of a Remote Device

SFB 29HS_COUNTCOUNTERSCounter (high-speed counter, integrated function) (only exist on the CPU 312 IFM and CPU 314 IFM)

SFB 30FREQ_MESCOUNTERSFrequency Meter (frequency meter, integrated function (only exist on the CPU 312 IFM and CPU 314 IFM)

SFB 31NOTIFY_8PCOM_FUNCGenerating block related messages without acknowledgement indication

SFB 32DRUMTIMERSImplement a Sequencer

SFB 33ALARMCOM_FUNCGenerate Block-Related Messages with Acknowledgment Display

SFB 34ALARM_8COM_FUNCGenerate Block-Related Messages without Values for 8 Signals

SFB 35ALARM_8PCOM_FUNCGenerate Block-Related Messages with Values for 8 Signals

SFB 36NOTIFYCOM_FUNCGenerate Block-Related Messages without Acknowledgment Display

SFB 37AR_SENDCOM_FUNCSend Archive Data

SFB 38HSC_A_BCOUNTERSCounter A/B (integrated function) (only exist on the CPU 314 IFM)

SFB 39POSICONTPosition (integrated function) (only exist on the CPU 314 IFM)

SFB 41CONT_CICONTContinuous Control (only exist on the CPU 314 IFM)

SFB 42CONT_SICONTStep Control (only exist on the CPU 314 IFM)

SFB 43PULSEGENICONTPulse Generation (only exist on the CPU 314 IFM)

SFB 44ANALOGTEC_FUNCPositioning with Analog Output (only exist on the S7-300C CPUs)

SFB 46DIGITALTEC_FUNCPositioning with Digital Output (only exist on the S7-300C CPUs)

SFB 47COUNTTEC_FUNCControlling the Counter (only exist on the S7-300C CPUs)

SFB 48FREQUENCTEC_FUNCControlling the Frequency Measurement (only exist on the S7-300C CPUs)

SFB 49PULSETEC_FUNCControlling Pulse Width Modulation (only exist on the S7-300C CPUs)

SFB 52RDRECDPReading a Data Record

SFB 53WRRECDPWriting a Data Record

SFB 54RALRMDPReceiving an Interrupt

SFB 60SEND_PTPTEC_FUNCSending Data (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 61RECV_PTPTEC_FUNCReceiving Data (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 62RES_RECVTEC_FUNCDeleting the Receive Buffer (ASCII, 3964(R)) (only exist on the S7-300C CPUs)

SFB 63SEND_RKTEC_FUNCSending Data (RK 512) (only exist on the S7-300C CPUs)

SFB 64FETCH_RKTEC_FUNCFetching Data (RK 512) (only exist on the S7-300C CPUs)

SFB 65SERVE_RKTEC_FUNCReceiving and Providing Data (RK 512) (only exist on the S7-300C CPUs)

SFB 75SALRMDPSend interrupt to DP master

SFB 81RD_DPARIO_FUNCTRead Predefined Parameter

System Function CallsNumberNameFamilyDescription

SFC 0SET_CLKCLK_FUNCSet System Clock

SFC 1READ_CLKCLK_FUNCRead System Clock

SFC 2SET_RTMCLK_FUNCSet Run-time Meter

SFC 3CTRL_RTMCLK_FUNCStart/Stop Run-time Meter

SFC 4READ_RTMCLK_FUNCRead Run-time Meter

SFC 5GADR_LGCIO_FUNCTQuery Logical Address of a Channel

SFC 6RD_SINFODB_FUNCTRead OB Start Information

SFC 7DP_PRALDPTrigger a Hardware Interrupt on the DP Master

SFC 9EN_MSGCOM_FUNCEnable Block-Related, Symbol-Related and Group Status Messages

SFC 10DIS_MSGCOM_FUNCDisable Block-Related, Symbol-Related and Group Status Messages

SFC 11DPSYC_FRDPSynchronize Groups of DP Slaves

SFC 12D_ACT_DPDPDeactivation and activation of DP slaves

SFC 13DPNRM_DGDIAGNSTCRead Diagnostic Data of a DP Slave (Slave Diagnostics)

SFC 14DPRD_DATDPRead Consistent Data of a Standard DP Slave

SFC 15DPWR_DATDPWrite Consistent Data to a DP Standard Slave

SFC 17ALARM_SQPMC_FUNCGenerate Acknowledgeable Block-Related Messages

SFC 18ALARM_SPMC_FUNCGenerate Permanently Acknowledged Block-Related Messages

SFC 19ALARM_SCPMC_FUNCQuery the Acknowledgment Status of the last ALARM_SQ Entering State Message

SFC 20BLKMOVMOVECopy Variables

SFC 21FILLMOVEInitialize a Memory Area

SFC 22CREAT_DBDB_FUNCTCreate Data Block

SFC 23DEL_DBDB_FUNCTDelete Data Block

SFC 24TEST_DBDB_FUNCTTest Data Block

SFC 25COMPRESSDB_FUNCTCompress the User Memory

SFC 26UPDAT_PIIO_FUNCTUpdate the Process Image Update Table

SFC 27UPDAT_POIO_FUNCTUpdate the Process Image Output Table

SFC 28SET_TINTPGM_CNTLSet Time-of-Day Interrupt

SFC 29CAN_TINTPGM_CNTLCancel Time-of-Day Interrupt

SFC 30ACT_TINTPGM_CNTLActivate Time-of-Day Interrupt

SFC 31QRY_TINTPGM_CNTLQuery Time-of-Day Interrupt

SFC 32SRT_DINTPGM_CNTLStart Time-Delay Interrupt

SFC 33CAN_DINTPGM_CNTLCancel Time-Delay Interrupt

SFC 34QRY_DINTPGM_CNTLQuery Time-Delay Interrupt

SFC 35MP_ALMPGM_CNTLTrigger Multicomputing Interrupt

SFC 36MSK_FLTDIAGNSTCMask Synchronous Errors

SFC 37DMSK_FLTDIAGNSTCUnmask Synchronous Errors

SFC 38READ_ERRDIAGNSTCRead Error Register

SFC 39DIS_IRTIRT_FUNCDisable New Interrupts and Asynchronous Errors

SFC 40EN_IRTIRT_FUNCEnable New Interrupts and Asynchronous Errors

SFC 41DIS_AIRTIRT_FUNCDelay Higher Priority Interrupts and Asynchronous Errors

SFC 42EN_AIRTIRT_FUNCEnable Higher Priority Interrupts and Asynchronous Errors

SFC 43RE_TRIGRPGM_CNTLRe-trigger Cycle Time Monitoring

SFC 44REPL_VALDIAGNSTCTransfer Substitute Value to Accumulator 1

SFC 46STPPGM_CNTLChange the CPU to STOP

SFC 47WAITPGM_CNTLDelay Execution of the User Program

SFC 48SNC_RTCBCLK_FUNCSynchronize Slave Clocks

SFC 49LGC_GADRIO_FUNCTQuery the Module Slot Belonging to a Logical Address

SFC 50RD_LGADRIO_FUNCTQuery all Logical Addresses of a Module

SFC 51RDSYSSTDIAGNSTCRead a System Status List or Partial List

SFC 52WR_USMSGDIAGNSTCWrite a User-Defined Diagnostic Event to the Diagnostic Buffer

SFC 54RD_PARMIO_FUNCTRead Defined Parameters

SFC 55WR_PARMIO_FUNCTWrite Dynamic Parameters

SFC 56WR_DPARMIO_FUNCTWrite Default Parameters

SFC 57PARM_MODIO_FUNCTAssign Parameters to a Module

SFC 58WR_RECIO_FUNCTWrite a Data Record

SFC 59RD_RECIO_FUNCTRead a Data Record

SFC 60GD_SNDCOM_FUNCSend a GD Packet

SFC 61GD_RCVCOM_FUNCFetch a Received GD Packet

SFC 62CONTROLCOM_FUNCQuery the Status of a Connection Belonging to a Communication SFB Instance

SFC 63AB_CALLPLASTICSAssembly Code Block (only exists for CPU 614)

SFC 64TIME_TCKCLK_FUNCRead the System Time

SFC 65X_SENDCOM_FUNCSend Data to a Communication Partner outside the Local S7 Station

SFC 66X_RCVCOM_FUNCReceive Data from a Communication Partner outside the Local S7 Station

SFC 67X_GETCOM_FUNCRead Data from a Communication Partner outside the Local S7 Station

SFC 68X_PUTCOM_FUNCWrite Data to a Communication Partner outside the Local S7 Station

SFC 69X_ABORTCOM_FUNCAbort an Existing Connection to a Communication Partner outside the Local S7 Station

SFC 70GEO_LOGIO_FUNCTDetermine Start Address of a Module

SFC 71LOG_GEOIO_FUNCTDetermine the Slot Belonging to a Logical Address

SFC 72I_GETCOM_FUNCRead Data from a Communication Partner within the Local S7 Station

SFC 73I_PUTCOM_FUNCWrite Data to a Communication Partner within the Local S7 Station

SFC 74I_ABORTCOM_FUNCAbort an Existing Connection to a Communication Partner within the Local S7 Station

SFC 78OB_RTDIAGNSTCDetermine OB program runtime

SFC 79SETBIT_LOGCSet a Range of Outputs

SFC 80RSETBIT_LOGCReset a Range of Outputs

SFC 81UBLKMOVMOVEUninterruptible Block Move

SFC 82CREA_DBLDB_CTRLCreate a Data Block in the Load Memory

SFC 83READ_DBLDB_CTRLRead from a Data Block in Load Memory

SFC 84WRIT_DBLDB_CTRLWrite from a Data Block in Load Memory

SFC 85CREA_DBDB_FUNCTCreate a Data Block

SFC 87C_DIAGCOM_FUNCDiagnosis of the Actual Connection Status

SFC 90H_CTRLHF_FUNCTControl Operation in H Systems

SFC 100SET_CLKSCLK_FUNCSetting the Time-of-Day and the TOD Status

SFC 101RTMCLK_FUNCHandling runtime meters

SFC 102RD_DPARAIO_FUNCTRedefined Parameters

SFC 103DP_TOPOLDPIdentifying the bus topology in a DP master system

SFC 104CIRPGM_CNTLControlling CiR

SFC 105READ_SIPMC_FUNCReading Dynamic System Resources

SFC 106DEL_SIPMC_FUNCDeleting Dynamic System Resources

SFC 107ALARM_DQPMC_FUNCGenerating Always Acknowledgeable and Block-Related Messages

SFC 108ALARM_DPMC_FUNCGenerating Always Acknowledgeable and Block-Related Messages

SFC 112PN_INPROFIne2Update inputs in the user program interface of PROFInet components

SFC 113PN_OUTPROFIne2Update outputs in the user program interface of PROFInet components

SFC 114PN_DPPROFIne2Update DP interconnections

SFC 126SYNC_PIIO_FUNCTUpdate process image partition input table in synchronous cycle

SFC 127SYNC_POIO_FUNCTUpdate process image partition output table in synchronous cycle

S5-S7 Converting BlocksNumberNameFamilyDescription

FC 61GP_FPGPS5_CNVRTChange fixed point number to floating point number

FC 62GP_GPFPS5_CNVRTChange floating point number to fixed point number

FC 63GP_ADDS5_CNVRTAdd floating point numbers

FC 64GP_SUBS5_CNVRTSubtract floating point numbers

FC 65GP_MULS5_CNVRTMultiply floating point number

FC 66GP_DIVS5_CNVRTDivide floating point numbers

FC 67GP_VGLS5_CNVRTCompare floating point numbers

FC 68RAD_GPS5_CNVRTExtract root of floating point numbers

FC 69MLD_TGS5_CNVRTClock generator

FC 70MLD_TGZS5_CNVRTClock generator (timing element)

FC 71MLD_EZWS5_CNVRTMessage of first value with single flashing light, wordwise, A

FC 72MLD_EDWS5_CNVRTMessage of first value with double flashing light, wordwise, A

FC 73MLD_SAMWS5_CNVRTCollected message, wordwise (sound alert)

FC 74MLD_SAMS5_CNVRTCollected message, bitwise

FC 75MLD_EZS5_CNVRTMessage of first value with single flashing light, bitwise, A

FC 78MLD_EDWKS5_CNVRTMessage of first value with double flashing light, wordwise, A+M

FC 79MLD_EZKS5_CNVRTMessage of first value with single flashing light, bitwise, A+M

FC 80MLD_EDKS5_CNVRTMessageof first value with double flashing light, bitwise, A+M

FC 81COD_B4S5_CNVRTChange BCD number to 16 bit dual number

FC 82COD_16S5_CNVRTChange 16 bit dual number to BCD number

FC 83MUL_16S5_CNVRTMultiply 16 bit dual numbers

FC 84DIV_16S5_CNVRTDivide 16 bit dual numbers

FC 85ADD_32S5_CNVRTAdd 32 bit dual numbers

FC 86SUB_32S5_CNVRTSubtract 32 bit dual numbers

FC 87MUL_32S5_CNVRTMultiply 32 bit dual numbers

FC 88DIV_32S5_CNVRTDivide 32 bit dual numbers

FC 89RAD_16S5_CNVRTExtract roots of 16 bit dual numbers

FC 90REG_SCHBS5_CNVRTBi-directional shift register, bitwise

FC 91REG_SCHWS5_CNVRTBi-directional shift register, wordwise

FC 92REG_FIFOS5_CNVRTBuffer memory (FIFO)

FC 93REG_LIFOS5_CNVRTStack register (LIFO)

FC 94DB_COPY1S5_CNVRTCopy data block, direct assignment of parameters

FC 95DB_COPY2S5_CNVRTCopy data block, indirect assignment of parameterization

FC 96RETTENS5_CNVRTSave scratchpad memory

FC 97LADENS5_CNVRTLoad scratchpad memory

FC 98COD_B8S5_CNVRTChange BCD number to 32 bit dual number

FC 99COD_32S5_CNVRTChange 32 bit dual number to BCD number

FC 100AE_460_1S5_CNVRTRead analog value

FC 101AE_460_2S5_CNVRTRead analog value

FC 102AE_463_1S5_CNVRTRead analog value

FC 103AE_463_2S5_CNVRTRead analog value

FC 104AE_464_1S5_CNVRTRead analog value

FC 105AE_464_2S5_CNVRTRead analog value

FC 106AE_466_1S5_CNVRTRead analog value

FC 107AE_466_2S5_CNVRTRead analog value

FC 108RLG_AA1S5_CNVRTOutput analog value

FC 109RLG_AA2S5_CNVRTOutput analog value

FC 110PER_ET1S5_CNVRTRead and Write for extended periphery (direct assignment of parameters)

FC 111PER_ET2S5_CNVRTRead and Write for extended periphery (indirect assignment of parameters)

FC 112SINUSS5_CNVRTSine (x)

FC 113COSINUSS5_CNVRTCosine (x)

FC 114TANGENSS5_CNVRTTangent (x)

FC 115COTANGS5_CNVRTCotangent (x)

FC 116ARCSINS5_CNVRTArc sine (x)

FC 117ARCCOSS5_CNVRTArc cosine (x)

FC 118ARCTANS5_CNVRTArc tangent (x)

FC 119ARCCOTS5_CNVRTArc cotangens (x)

FC 120LN_XS5_CNVRTNatural logarithm ln (x)

FC 121LG_XS5_CNVRTDecade logarithm Iog (x)

FC 122B_LOG_XS5_CNVRTGeneral logarithm log (x) to basis b

FC 123E_H_NS5_CNVRTe to the power of n

FC 124ZEHN_H_NS5_CNVRT10 to the power of n

FC 125A2_H_A1S5_CNVRTAKKU 2 to the power of AKKU 1

IEC Function BlocksNumberNameFamilyDescription

FC 1AD_DT_TMIECPoint Math Add duration to a time

FC 2CONCATIECCombine two STRING variables

FC 3D_TOD_DTIECCombine DATE and TIME_OF_DAY to DT

FC 4DELETEIECDelete in a STRING variable

FC 5DI_STRNGIECData type conversion DINT to STRING

FC 6DT_DATEIECExtract the DATE from DT

FC 7DT_DAYIECExtract the day of the week from DT

FC 8DT_TODIECExtract the TIME_OF_DAY from DT

FC 9EQ_DTIECCompare DT for equal

FC 10EQ_STRNGIECCompare STRING for equal

FC 11FINDIECFind in a STRING variable

FC 12GE_DTIECCompare DT for greater than or equal

FC 13GE_STRNGIECCompare STRING for greater than or equal

FC 14GT_DTIECCompare DT for greater than

FC 15GT_STRNGIECCompare STRING for greater than

FC 16I_STRNGIECData type conversion INT to STRING

FC 17INSERTIECInsert in a STRING variable

FC 18LE_DTIECCompare DT for smaller than or equal

FC 19LE_STRNGIECCompare STRING for smaller than or equal

FC 20LEFTIECLeft part of a STRING variable

FC 21LENIECLength of a STRING variable

FC 22LIMITIECPoint Math Limit

FC 23LT_DTIECCompare DT for smaller than

FC 24LT_STRNGIECCompare STRING for smaller than

FC 25MAXIECPoint Math Select maximum

FC 26MIDIECMiddle part of a STRING variable

FC 27MINIECPoint Math Select minimum

FC 28NE_DTIECCompare DT for unequal

FC 29NE_STRNGIECCompare STRING for unequal

FC 30R_STRNGIECData type conversion REAL to STRING

FC 31REPLACEIECReplace in a STRING variable

FC 32RIGHTIECRight part of a STRING variable

FC 33S5TI_TIMIECData type conversion S5TIME to TIME

FC 34SB_DT_DTIECPoint Math Subtract two time values

FC 35SB_DT_TMIECPoint Math Subtract duration from a time

FC 36SELIECPoint Math Binary selection

FC 37STRNG_DIIECData type conversion STRING to DINT

FC 38STRNG_IIECData type conversion STRING to INT

FC 39STRNG_RIECData type conversion STRING to REAL

FC 40TIM_S5TIIECData type conversion TIME to S5TIME

PID Control BlocksNumberNameFamilyDescription

FB 41CONT_CICONTContinuous Control

FB 42CONT_SICONTStep Control

FB 43PULSEGENICONTPulse Generation

FB 58TCONT_CPCONTROLTemperature Continuous Controller

FB 59TCONT_SCONTROLTemperature Step Controller

Communication BlocksNumberNameFamilyDescription

FB 2IDENTIFYCP_300For checking deviceproperties

FB 3READCP_300Reads data from a data area of the communication partner specified by a name or index depending on the assignment of parameters for the job.

FB 4REPORTCP_300Allows unconfirmed transmission of variables by an FMS server.

FB 5STATUSCP_300allows status information to be requested from the communications partner on the specified FMS connection.

FB 6WRITECP_300Transfers data from a specified local data area to a data area on the communication partner.

FB 8USENDCP_300Uncoordinated Sending of Data

FB 9URCVCP_300Uncoordinated Receiving of Data

FB 12BSENDCP_300Sending Segmented Data

FB 13BRCVCP_300Receiving Segmented Data

FB 14GETCP_300Read Data from a Remote CPU

FB 15PUTCP_300Write Data to a Remote CPU

FB 20GETIOIO_FUNCTRead All Inputs of a DP Standard Slave/PROFINET IO Device

FB 21SETIOIO_FUNCTWrite All Outputs of a DP Standard Slave/PROFINET IO Device

FB 22GETIO_PARTIO_FUNCTRead a Part of the Inputs of a DP Standard Slave/PROFINET IO Device

FB 23SETIO_PARTIO_FUNCTWrite a Part of the Outputs of a DP Standard Slave/PROFINET IO Device

FB 55IP_CONFIGCP_300Transfers a configuration data block (CONF_DB) containing connection data for an Ethernet CP.

FB 63TSENDCOMMSending Data via TCP native and ISO on TCP

FB 64TRCVCOMMReceiving Data via TCP native and ISO on TCP

FB 65TCONCOMMEstablishing a Connection using TCP native and ISO on TCP

FB 66TDISCONCOMMTerminating a Connection using TCP native and ISO on TCP

FB 67TUSENDCOMMSending Data via UDP

FB 68TURCVCOMMReceiving Data via UDP

FC 1DP_SENDCP_300transfers data to the PROFIBUS CP

FC 2DP_RECVCP_300receives data on PROFIBUS

FC 3DP_DIAGCP_300used to request diagnostic information

FC 4DP_CTRLCP_300transfers control jobs to the PROFIBUS CP

FC 5AG_SENDCP_300data by means of a configured connection to the communication partner ( ASUSTeK/Broadcom 440xin the example).

Note: The access point name is used later in IFIXSCADA in the Project Editor underCommunication | Boardsin theSpecial Optionstext box. The access point name is case-sensitive.

After creating the access point the Configuration Console should look like this:4. Close the Configuration Console.This completes the Simatic NET software configuration.Configuring the S7 driverThe IFIX S7 driver needs three names (settings) from the SIMATIC NET softwareconfiguration. The following points are needed:SIMATIC NETConfigurationexampleIFIX Info

Access point of the applicationIFIXS7Boards, Special optionsField

VFD/Application NameVFD1Ports, Special options Field

Name of the connection (or LocalID)S7-Connection_1IODevices, Address Field

Using the Express WizardYou use the Express Wizard to configure your communications.1. In IFIX Explorer, create a new (empty) test project.2. In the IFIXSCADA Project Editor, choose Communication | Express Wizard.3. In the wizard: Create a new I/O Servers e.g.IOServer. Create a new I/O Device e.g.IODev. Select external as the type of the I/O Device (PLC): Select theSiemens | S7-300orS7-400| TCPIP using NE2000 network CARD for Windows NT for NT/W2K/XP/2003, or theTCPIP using NE2000 network CARD for Windows 95/98 for 95/98/MEoption.4. Define the name of the connection. In this example it isS7-Connection_1.

Note: Do not select theLink I/O Device to an external tag Databaseoption.This completes this section.Setting the Access PointThe next step in the process is to set the access point of the application.1. Open the Boards dialog box by choosingCommunication | Boards.2. In theSpecial Opttext box, enter the access point of the application. This example usesIFIXS7.Setting the VFD nameThe next step is to set the VFD name.1. Open the Ports dialog box by choosingCommunication | Ports.2. In theSpecial Opttext box enter the VFD Name. In this caseVFD1.Checking the name of the S7 connectionThe next step is to check the name of the S7 connection.1. Open the I/O Device dialog box by choosingCommunication | I/O Devices.2. In theAddressfield enter the name of the connection to the PLC. This example usesS7-Connection_1.Variable declarationThe next step is to declare the variables.1. Open the Tags Form by choosingTags | Variable Tags.2. Create a variable with the following information: Variable Tag Name: TestInteger I/O Device Name: IODev Type: INT Address: DB190,0Troubleshooting your S7 connectionQuestion:I receive the following error message when downloading the PC station in the SIMATIC NCM PC manager: "The module "station manager" cannot be contacted. Change the on-line interface." "For On-line connections via the PC internal interface a station name must be assigned in the component configurator. This name must be identical to the name of the PC station, as configured in the STEP7 (or Simatic Net) project." "Online: No connection could be made. The participant does not announce itself."Solution1. Check in SIMATIC NCM PC Manager under the Menu optionOptions | Set PG/PC Interface, whether the point of entrance S7ONLINE is linked with the PC internal (local) interface.2. TheStation Configuration Editortells you whether your module is Online. You can start theStation Configuration Editorby double-clicking the icon. This should not beOFFLINE, so to change its mode of operation, clickChange Mode. The mode of operation should now change toONLINE.3. Check the station name in the Station Configuration Editor. This must match with the name in SIMATIC NCM PC Manager. You can change the station name in the Station Configuration Editor by clickingStation Name.4. Open the Station Configuration Editor and the SIMATIC NCM PC Manager. Check the order and the number of configured components and the indexes that are used. These should match.

Graduation : BE/B.Tech/ME/M.Tech

No contract employees.

Job Profile:Here is the job profile for STEP7 ST teams resource requirements (Domain Tester). As usual people with engineering and configuration work will be useful. People having maintenance kind of experience will not be useful here.Job Profile:* Industrial Automation Domain Testing, especially in PLC Systems.* Migration, Conversion of Step7 Projects.* System testing for future generation of SIMATIC application software.* A sound knowledge of SIMATIC Classic Internals / SIMATIC Manager is required.* Knowledge of the TIA Portal would be advantageous.* Designing, Executing test cases, Bug Tracking.* Preparation, implementation and maintenance of automated tests. Experience in C# and VBasic would be advantageous.* Evaluation of test results, defects and reporting.* Working on Industrial Automation systems like PLC SystemsQualifications :* Educational Qualification: BE (EC, CS, EE, IE)Experience & Skills:* 2-5 Yrs of experience on one or all of the above mentioned preference.* Exposure to Testing Methodologies would be good.Must have: Work Experience on SIMATIC Manager, Sound Understanding of Internals of SIMATIC Classic\ Manager, Experience on S7 Series of PLCs and Configurations, Industrial Networking Protocols.

Interview :23rd August

If interested please revert with your updated resume along with the below details [email protected]

Name (in full)

Contact Number

E-mail id

Passport #

Gender

DOB

Current CTC

Expected CTC

Skills

Total yrs of experience

Relevant yrs of experience

Holding any offer(s)

Notice period

Serving notice period (Yes / No)

Current company

Current Designation

No. of companies worked till now

Any contract employment (If yes,mention the companies)

Highest degree in (regulars)

PG - %, University, College,Specialization, Year of passing

UG - %, University, College,Specialization, Year of passing

HSC / Diploma - %, School,Specialization, Year of passing

SSC - %, School, Year of passing

Current Location

Preferred Location

Details of on-site travel

For more details pls feel free to reach me @044-45098642/9176882859--Thanks & RegardsScindiaTalent Acquisition

COVENANT CONSULTANTS

"Fastest Growing Recruitment Company in India accredited by ERA"Corporate Office :India Land Tech ParkTower - B, 4th FloorPlot No 14, 3rd Main Road, Ambattur Industrial Estate, Chennai - 600 058.Direct: 044 4509 8642Fax: 044 4509 8677/ E-Mail:[email protected] :http://covenantindia.netConnect with us onFacebook& Follow us onTwitterLocations : Chennai : Bangalore : Hyderabad : Coimbatore : UAE : SINGAPORE : UK