Jump to content

Recipe and DTI

Recommended Posts


I have an application in mind where there are multiple portable machines on an assembly line that each perform the same basic function (lets say they are volumetric dosing machines).  Each has its own PLC.  There are about 100 different products and each unit has 3-5 different doses of said product as the unit moves through the assembly process.  Of course each machine could have its own recipe table but then keeping all the individual machines in sync becomes very challenging.  I want to have a central remote database/table (preferably a user friendly excel file).  From each machine I would like to be able to "pull" the latest recipe list.  One user (production manager) would control the master excel file and then all machines can update from that.

Within Unistream it seems i can load a DTI from a remote file however that file must reside on the SD card.  I can also import or create a DTI from an excel file however that tool is only available from within unistream.  I want the end user to be able to do that from the (virtual) HMI but there does not seem to be a related ladder function.  I can see a way to do this through SQL however that is a little more cumbersome because the user would need to manage the SQL database somehow and that interface would likely be excel so why not skip the SQL part.

Further to this concept, is there a way to group PLC's and communicate with said group from one HMI/webserver?  From the above example, once the recipe file is loaded i would like the user to be able to choose 5 machines out of a group of 10 to assign to a job and then enter the Product ID# to call up a recipe and then have all the machines assigned to that group call the same recipe from that product.  Basically i'm wanting to avoid having to go to each of the 5 machines and enter the product ID# independently.  Similarly, it would be cool to command all machines in a set group to "pull" the master recipe list at the same time, just to avoid have to repeat the same command for each machine.

Machines are portable so not hardwired to a network but would each have a wifi adaptor.  The mater "excel" file would reside in a folder on the network.

I hope that makes sense.  Please feel free to ask me to clarify anything.

Thank you.


Link to comment
Share on other sites

Sounds like you're still trying to flesh out a solution to your application.

I'm trying to pull the actual questions out of your post.  Let me know if I did - 

18 hours ago, zed said:

Further to this concept, is there a way to group PLC's and communicate with said group from one HMI/webserver?

Yes.  Use Modbus TCP to throw data between the units.

18 hours ago, zed said:

Within Unistream it seems i can load a DTI from a remote file however that file must reside on the SD card.

Yes.  By design the UniStream can't go out to the network and read/write files - that would be a security nightmare.  We don't need a PLC with the ability to deposit a ransomware payload within the plant.

You can enable the FTP server on the UniStream, and what I tell people to get files from their corporate network onto the UniStream is to have a script running somewhere that copies the file in need to the UniStream.  

The only "file - ish" transaction UniStream can initiate is a SQL Query.  In order for this to work the UniStream must be set up in the SQL database as a user with certain permissions.  This offloads the security responsibility to someone else.


Joe T. 


Link to comment
Share on other sites

Good answers, Thanks Guys!


I've alreadycreated an SQL DB,  set up SQL  permissions etc, I was just struggling with how the user would interface with that DB.  FTP seems like a viable alternate route.  I'll explore that.

Modbus for interaction.  Got it.

I think the only outstanding question is group assignment.  Is there a way, from one screen or webserver screen, that a user could see 10 active machines and group them something like 5 machines to "Assembly Line 1", 4 to "Assembly line 2" and 1 unassigned?  The idea here is that once assigned to a group they could all act together on the common recipe call.  Perhaps this is more about the method of going about it and Modbus could work for this too?




Link to comment
Share on other sites

Grouping and active status is all about using your imagination.

Modbus is just the method for data transport - like a piece of paper, it doesn't care what's written on it.  Your challenge will be to define the data, the data transfer rules, the operator interface, oh, and don't forget the actual machine control.

If you haven't dug into the UniStream software yet (UniLogic) I'd recommend looking at the Help on SQL, Data Tables, and Modbus for a much more detailed explanation of what you can do.


Joe T.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...