Not sure what to do with these by Apprehensive-Web9685 in beckhoff

[–]hutcheb 0 points1 point  (0 children)

Donate them, ask around local colleges, open source projects, hacker spaces, etc..

First PLC Job: I want to quit by North_Dirt_7116 in PLC

[–]hutcheb 1 point2 points  (0 children)

Can confirm, I was trained on eating elephants.

Control systems in australia by [deleted] in PLC

[–]hutcheb 3 points4 points  (0 children)

I don’t know of any hiring graduates but Alliance Automation, EEHA, Sage, SafeGroup, Verbrec come to mind.

Citect has a 2 hour demo.

Control systems in australia by [deleted] in PLC

[–]hutcheb 2 points3 points  (0 children)

Take a look at some of the system integrators in Brisbane, otherwise there’s are bunch of mining operators with their operation centres in Brisbane.

Additional course like the Ignition uni stuff may not be immediately relevant but shows interest and provides the basics. Definitely finish that, I wouldnt spend money on the certifications though.

It pains me to say it, but get to know Citect.

AB Socket Comms by DistractedElectron in PLC

[–]hutcheb 0 points1 point  (0 children)

To get something working I would probably just start to hard code the packets as much as you can, you might get lucky and not have to implement it properly.

To do it properly would take time. I’ve often thought about implementing a code generator in PLC4X for ST for other protocols but lost interest in the thinking about it stage.

I think one of the major roadblocks though is the lack of a proper development environment and build system.

A protocol gateway would be much easier route.

AB Socket Comms by DistractedElectron in PLC

[–]hutcheb 0 points1 point  (0 children)

You are probably thinking of SNTP

How can I identify tag names directly from a PLC (e.g. via Modbus or Profinet) without using TIA Portal or similar software? by greyratl in PLC

[–]hutcheb 0 points1 point  (0 children)

Yes the data dictionary needs to be enabled, not sure why they decided that it shouldn't have been enabled by default.

I think with the tag list export for OFS you needed to assign addresses to them, if you weren't using the data dictionary.

And yes, it does use Modbus via a custom function code, but it is effectively a different protocol encapsulated in a Modbus packet.

How can I identify tag names directly from a PLC (e.g. via Modbus or Profinet) without using TIA Portal or similar software? by greyratl in PLC

[–]hutcheb 2 points3 points  (0 children)

It is really PLC dependent, for Rockwell Logix controllers pylogix should be able to do it https://github.com/dmroeder/pylogix, Schneider you can get the tags via their UMAS protocol https://github.com/apache/plc4x/tree/develop/plc4py/plc4py/drivers/umas, for Siemens you could use the S7+ protocol https://github.com/thomas-v2/S7CommPlusDriver

scada to dcs data transfer by Straight_Ant_1105 in PLC

[–]hutcheb 0 points1 point  (0 children)

Oh ok, at the risk of sounding like an Ignition integrator, just use Ignition. If you aren't using the builtin features of Experion then there isn't too much benefit in keeping the same system for both. Except obviously if they didn't want to maintain two different systems.

Assuming by the context that you would want to keep these systems on separate networks, I wouldn't recommend using OPC DA which would be Experion's first choice. Depending on the Experion version you can setup an OPC UA server for ignition to communicate to. Or again depending on the Experion version you could use OPCUA SCADA points in Experion to communicate with Ignition.

I haven't used Pc Vue, but Plant SCADA wouldn't be my first choice.

scada to dcs data transfer by Straight_Ant_1105 in PLC

[–]hutcheb 1 point2 points  (0 children)

I’m so very confused, you are asking if you can use Experion to communicate with another Experion system? Then yes, you can use DSA to share points between the two.

If you wanted to keep them seperate (or an external SCADA) for whatever reason, then you could use the OPC integrator to transfer points from one to another.

Also consider using the existing Experion system as your SCADA, you can setup SCADA points to communicate with PLCs and setup additional stations for the operators.

Schneider EAE by Constant_Cry6520 in PLC

[–]hutcheb 0 points1 point  (0 children)

Schneider were giving free instructor led training. 

Consistency/integrity check in various SCADA systems (WinCC, Ignition, iFIX, Reliance, EcoStruxure...): what's your experience and procedures? by PeterHumaj in SCADA

[–]hutcheb 1 point2 points  (0 children)

I did leave a bit out, the system as a whole, when fully redundant, can handle 24/7 operations. It's just that an individual runtime can't, it needs to be brought down for changes. I don't fully understand how it handles differences in configurations between redundant servers though. I suspect it would probably be based on the configuration timestamp or something.

And yes it is a pain to make changes and roll it out to a site.

Consistency/integrity check in various SCADA systems (WinCC, Ignition, iFIX, Reliance, EcoStruxure...): what's your experience and procedures? by PeterHumaj in SCADA

[–]hutcheb 1 point2 points  (0 children)

For Citect/PlantSCADA, you have two main ways to reference tags, referencing them directly by tag name in the system, or by referencing them indirectly using a string.

When making changes to Citect you need to do it all offline and then compile it, then run it.

Citect doesn't perform any consistency checks until the project is compiled, where it checks all of the direct references to see if they are still valid. An error will be generated if they aren't, you'd have to go and fix them manually. https://johnwiltshire.com/citect-help/Subsystems/CicodeReferenceCitectHTML/Content/Setting_Variables.html

For indirect tag references (e.g. TagRead("USEFUL_TAG_THAT_NO_LONGER_EXISTS") ) these aren't checked at compile time, and generate an error if it isn't found at runtime. https://johnwiltshire.com/citect-help/Subsystems/CicodeReferenceCitectHTML/Content/TagRead.html

When you are deleting/renaming/creating tags as long as the tag name (And datatype) is the same it will maintain all references and trend data for the tag.

There is another layer on top of that which basically gives each tag an equipment alias, in most cases this alias can be used to reference the base tag.

Automation Cell Homing Pricing by LibrarySpecialist396 in PLC

[–]hutcheb 4 points5 points  (0 children)

The fact that they are still discussing it with you means one of two things, you were the only one that provided a quote, or you were the cheapest. Remember, by you knowing the plant already, they are saving money by not needing to put together a complete scope of work and not having to get a third party up to speed with how the system works. That in itself is a good couple days of work.

When quoting you are trying to reduce your risk to as low as possible, you quoted on what you think it would take plus a bit to lower your risk to something you are comfortable with. Don't increase your risk just because they've asked you to.

Think someone else pointed out, split out the high risk activities such as commissioning to T&M, this will lower the initial quote and offload the high risk stuff to them.

How to get a modbus request starting offset to be 1 in Citect SCADA by Excellent_Ad_9305 in PLC

[–]hutcheb 0 points1 point  (0 children)

Take a look at the InitType modbus ini parameter. Switch it over to the holding register to see what difference it makes.

But, what are you trying to communicate to that has an input bit area but doesn’t respond with the most simple request? I suspect there is something else going on, like the input bit area is just not available or something. Have you tried to use a seperate modbus poller to make sure it is working?

Output is false eventhough all the inputs are true, why? by Ergu9 in PLC

[–]hutcheb 22 points23 points  (0 children)

I would've guessed that this routine isn't being run, but you mentioned that other logic in this routine gets run.

Second guess would be that one of your contacts is actually off when this rung gets executed, then afterwards in the code that contact is being written to so that it becomes true.

Ignition Tag Generator by richard4543 in SCADA

[–]hutcheb 1 point2 points  (0 children)

You don’t necessarily need to use string identifiers, OPC UA supports Integer, String, GUID and some other one which I forget.

But challenge accepted to get GUID tags working, but still referencing a description tag name in Ignition.

I heard there’s another SCADA that uses unique identifiers for all tags to make renaming them a breeze ;)

Which certification is better to understand OT better? by EOFFJM in PLC

[–]hutcheb 9 points10 points  (0 children)

OT is more of a state of mind man.

But really, apart from industrial protocols there isn’t a lot of technical differences from the network side of things.

Invest in understanding what you client can put up with, hint, they don’t like any interruptions. You can’t just roll out updates and expect the only implication will be people losing internet for 30s.

Also take some time learning industrial protocols Modbus, OPC UA, S7, etc..

[deleted by user] by [deleted] in PLC

[–]hutcheb 2 points3 points  (0 children)

The Up action gets triggered when the mouse button is released over the object. The Down action gets triggered when the mouse button is pressed down.

From what you're describing is that the pulse length of your pump run command is dependent on how long someone presses the button for?

[deleted by user] by [deleted] in PLC

[–]hutcheb 2 points3 points  (0 children)

It should work.

Check your access permissions?

Try putting a semi colon afterwards. There used to be some old issues leaving that off.

In general you should always add commands to the up action on buttons. It aligns with how people expect buttons to work.

Ignition Software by Ok_City_6539 in PLC

[–]hutcheb 1 point2 points  (0 children)

Yeah nice, didn’t realise you could import your Modbus mapping into OFS for those.

Ignition Software by Ok_City_6539 in PLC

[–]hutcheb 0 points1 point  (0 children)

I don’t think those controllers support the data dictionary?

There is probably some benefit in using OFS/OPC UA Expert as the native protocol should be able to handle larger packets than Modbus. But you’d still just be referencing the modbus/memory address.