Greetings, I am a beginner in Codesys and currently delving into it for a project we are working on. The project involves controlling a portable rollformer specifically designed for roofing metal. We are in need of a PLC with a 7" HMI, but with a unique requirement from the client - they prefer non-touchscreen operation. This means all interactions on the screen must be done through buttons, function keys, a membrane keypad, or a similar mechanism. Finding an HMI that fits these criteria, functions at temperatures as low as -10 degrees Celsius, and is readable outdoors has proven to be quite challenging. The equipment will be installed in enclosed trailers, with the screen positioned just inside the trailer door for easy access by the operator. After thorough research, the IFM CR1074 seems to meet all our requirements. My plan is to utilize the CR1074 solely as an HMI and have it communicate with a Do-More BRX PLC via either Modbus or Ethernet/IP. I have experience mapping variables into Modbus memory blocks on the PLC side, but I am unsure about configuring this setup in Codesys. Specifically, I need to establish Modbus addresses and potentially convert registers to 32-bit integers as necessary. Additionally, some variables will be editable on the screen (e.g., entering quantities for parts to cut and target lengths using a USB numeric keypad connected to the CR1974). These edited variables must be written back to the PLC. Typically, traditional HMIs handle data conversion and Modbus writes automatically, but I am uncertain about how this process works in Codesys. I am seeking guidance on whether the CR1074 should act as the Modbus slave or Master, and how to configure it to display values from the PLC while allowing input of new values to be written back. Any assistance or insights on this matter would be greatly appreciated!
In my opinion, it would be more efficient to develop the PLC program using Codesys, taking advantage of the HMI's runtime capabilities, and then incorporating another system for remote IO. This simplifies the process significantly. If you have already invested a lot of time in the BRX platform and are not keen on switching to Codesys, you can still integrate Modbus data into the Codesys device smoothly. This allows you the flexibility to apply various logic and manipulation functions within the Codesys environment. There are plenty of valuable resources available online for Codesys, so a quick search using relevant keywords can provide great insights. You can also check out tutorials from experts like Tohid Alizadeh and Jakob Sagatowski on YouTube, as well as consulting Codesys documentation for additional support (although the help files may be concise).
Hey there! Your project sounds quite interesting. With regard to the CR1074 acting as a Modbus slave or Master, that will depend on the exact nature of your hardware setup. Ideally, your PLC should be the master as it needs to write instructions to and read data from your HMI. Codesys is quite flexible and allows you to easily configure your Modbus addresses and data types, and handle the conversion of registers to 32-bit integers. For your variable input concern, depending on how you set up your Codesys program, you may assign specific 'write' functions to your input variables. Basically, the PLC gathers the input through the CR1074, and returns it to the PLC for action. This offers a solution for your need to input quantities and lengths using a USB numeric keypad. That being said, Codesys can seem a bit intimidating for newcomers, so I'd recommend spending time with their tutorials and guides, they're quite comprehensive and often provide insights on topics like these. Good luck!
Hi there! Your project sounds exciting and indeed poses some unique challenges. Codesys offers excellent flexibility when it comes to communication protocols and should be capable of all you've described. As for your query, theModbus communication model is typically such that your PLC (as the device that stores and processes data) would act as the Modbus slave, and your HMI, the CR1074 in this case, (as the intriguing device with interactive capabilities) would act as the Master. Establishing addresses in Codesys is fairly straightforward. You'll define the variables you need, and assign them addresses. Remember to adhere to Modbus standard addressing. For data conversion, the quickest way is to use the integrated functions from the standard library, such as DWORD_TO_INT for 32-bit conversion. Finally, keep in mind that writing back changed variables to the PLC involves mapping these variables on both ends - they should be defined as read/write on the HMI (Modbus Master) and write/read on the PLC (Modbus Slave), respectively. Good luck with your project!
Hello! It sounds like you're embarking on an interesting project. As for Modbus configuration in Codesys, I'd recommend having the CR1074 act as a Modbus slave, as this allows it to respond to requests for data and actions, which seems fitting for your requirements. Remember, as a slave, the HMI only sends replies, usually after it has been queried by the master (your PLC). You can use the ModbusSlv library in Codesys to make this configuration. As for writing values back to PLC, Codesys does support writing to the Modbus registry. You could map your buttons or input fields to variables and then write these variables on value changes to PLC registers using MB_SERVER_WRITE command. And about data conversion, you can use Type conversion functions available in Codesys. They provide considerable flexibility, allowing you to convert integer registers to real values within the visualisation itself. Feel free to ask if you have further queries. Happy coding!
✅ Work Order Management
✅ Asset Tracking
✅ Preventive Maintenance
✅ Inspection Report
We have received your information. We will share Schedule Demo details on your Mail Id.
Answer: Answer: The client prefers non-touchscreen operation, requiring all interactions on the screen to be done through buttons, function keys, a membrane keypad, or a similar mechanism. The HMI must also function at temperatures as low as -10 degrees Celsius and be readable outdoors.
Answer: Answer: The IFM CR1074 meets the criteria of non-touchscreen operation, functioning at low temperatures, and being readable outdoors. It is planned to be used solely as an HMI to communicate with a Do-More BRX PLC via Modbus or Ethernet/IP.
Answer: Answer: The configuration involves establishing Modbus addresses, potentially converting registers to 32-bit integers, and ensuring that variables editable on the HMI can be written back to the PLC. The setup may require determining whether the CR1074 should act as the Modbus slave or Master and configuring it to display values from the PLC while allowing input of new values to be written back.
Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.