Even though SECS/GEM (HSMS) is an Ethernet protocol only one host can be connected to the tool at a time. When you need to collect data but there's already a fab-host performing process automation you need a “Y-Tap” or snooping connection. It's easy to set up with TransSECS. Here we snoop a SECS/GEM connection and send the collected data to an OPC UA server. You could also send it to a database, a factory automation application, the Cloud - almost anywhere.

Open the StandAloneGEMTool and the SECSTester

In the SECSTester, choose “Set Up Communication to Tool” and configure a “PassThroughTool” with a port of 5000.

Save and close, and select the connection in the SECSTester window

Open TranSECS (Servers Version) and load the PassThroughTool project. Build the project as normal, but don't go LIVE.

Navigate to the project deployment folder.

And edit the file “ErgoTechConfiguration.properties”. At the end of the file, add the line “transsecs.passthrough=true”

# Create a passthrough connection
transsecs.passthrough=true

Start the application (click the run.bat file) and connect with your favorite OPC UA Client. Here we use the UAExpert which is a free download from Unified Automation

Open the passthroughtool/configuration node and choose the “port” leaf. Set this to 5000.

The configuration looks like this. Our connection is snooping messages between the fab host and the equipment.

All that remains is to test it. Click “Connect to Tool” on the SECSTester. You'll see an S1F13 message sent to the GEM Tool and an S1F14 response.

On the GEM Tool, select the “STARTED” event and click the “Send Selected Event” button. Quite a lot happens. We see the message in the “Messages Sent” of the GEM Tool and in the “Messages From Tool” of the SECSTester. The SECSTester also sends the S6F12 response.

Notice that this message has two floating point values (F4). Although you can't tell from the message, the first of these is the “GasFlow” variable. We see this value update in the OPC Client.

Now enter “Lot1” in the LotID field and “Recipe1” in the PPID Field. Select and send the “LOADED” event. The PPID and LotID fields update in the OPC Client.

That's all there is to it. Whenever a value is sent as part of a report, the OPC Client will update with the latest value.

If the value you need is not part of a report you can request the message using an S1F3. This you send in the same way as you would with any TransSECS OPC Server application, using the sendmessage tag. You'll need to watch for the value in the svidresponse message.

If your equipment supports it, we prefer the “S6F15” message - EventReportRequest With this you can read a report just as if it hand been sent by an event and TransSECS will automatically populate the values for you.

As an example, change the PPID to “Recipe2” and the LotID to “Lot2”. Then send the EventReportRequest . Set the “ceid” to 7503 (LOADED event) then set the “responsestatus” to 99 and change the “sendmessage” tag from false to true. It will change back to false as soon as the response has been received. The “responsestatus” will change to 0 if the message transaction was successful, otherwise the error code will indicate the issue.

You'll see the PPID and LotID tags update in the OPC Client.

Notice that these messages were not received in the SECSTester.

This example, uses the VIDs and CEIDs available in the GEM Tool simulator and RPTIDs defined with those variables.

For your specific equipment update the CEIDs and VIDs to match the equipment and the reports to match those configured at the tool. If you can connect directly to the tool you can use the TransSECS “Characterization” feature to upload this information directly from the tool.

Tool Characterization

It's important not to modify the reports as the host may be expecting the particular format.

  • opc_pass_through_data_collection.txt
  • Last modified: 2021/04/19 18:16
  • by wikiadmin