We will now look at creating BRX Do-More dynamic web pages on our PLC web server. These pages are great for operator information display. A dynamic web page is a web page that displays different content each time it’s viewed. For example, the page may change with the time of day, the user that accesses the web-page, or the type of user interaction. There are two types of dynamic web pages.
Server Side Scripting – Web pages that change when a web page is loaded or visited use server-side scripting. Login pages, forums, and shopping carts are examples of server-side scripting. PHP, ASP, Perl, and ASP.Net, are some of the languages that can be used.
The BRX Do-More PLC Peerlink Ethernet communication network is one of the easiest networks to set up and run. Peerlink is a shared programmable logic controller (PLC) common memory area within a local network. Do-More central processing units (CPUs) or DirectLogic PLC systems using ECOM100 modules can read the entire area and write to their programmed area if selected.
The network uses TCP/IP broadcast packets to publish the blocks of data PEERLINK (PL) memory to all of the devices attached. This broadcast will share the data network to the local domain only. Each member can optionally send data to the other members of the data-sharing network by electing to “publish” one or more blocks of PEERLINK (PL) memory.
This can sound confusing at first, but it is the simplest network to set up. You can have your Peerlink network up and running in a matter of minutes. We will be setting up and demonstrating the Peerlink network using a BRX BX-DM1E-18ED13 and the Do-More Simulator. Let’s get started. Continue Reading!
We will now look at the BRX do-more plc ethernet remote IO. The BRX Do-More PLC has its own line of remote input and output expansion units. You can add up to 8 I/O expansion units per controller (CPU) and 8 BRX expansion modules per expansion unit. This will make your system grow with your needs.
The remote I/O expansion units feature the following:
• All units have built-in Ethernet port, 10/100 Mbps
• MBIO units have onboard RS-485 port with removable 3-Pin connector
• Support for 8 expansion modules
• AC and DC powered units available
• AC powered units include an integral 24VDC auxiliary output power supply
• Power connector and serial port connector included
We will be looking at the BX-DMIO-M. This is the Do-More Ethernet Remote I/O supported protocol unit. We will discuss the hardware and then connect and configure the unit to work with our existing BRX Do-more PLC. Let’s get started. Continue Reading!
MQTT stands for Message Queuing Telemetry Transport. This simple publish and subscribe communication protocol does not take too many resources.
Constrained devices with low bandwidth are ideal for MQTT. This protocol provides machine to machine (M2M) connectivity which is ideal for the Internet of Things. (IoT) This protocol is not for remote IO or real-time (deterministic) applications. MQTT is a good solution for applications that move data from hundreds or thousands of machines (sensors) to clients in many networks.
We will be installing a windows based broker called Mosquitto. The Do-More BRX PLC will be one of the clients publishing and subscribing to the MQTT broker. MQTT Lens (Chrome Browser App) will be the other client publishing and subscribing to the MQTT broker. Each client will share information. Let’s get started. Continue Reading!
MQTT stands for Message Queuing Telemetry Transport. It is a simple publish and subscribe communication protocol that does not take too many resources.
Constrained devices with low bandwidth are ideal for MQTT. This protocol provides machine to machine (M2M) connectivity which is ideal for the Internet of Things (IoT) or Industrial Internet of Things. (IIoT)
We will be using a free on-line public MQTT broker from HiveMQ. Messages will be published and subscribed to by two clients. The first will be an MQTT Browser Client by HiveMQ. The Do-More Designer Simulator PLC will be the second MQTT Client. Information in the form of bits and words will be published and sent to both clients. Let’s get started. Continue Reading!
The purpose of a ramp soak profile is to make gradual, controlled changes in temperature (Ramp), followed by a temperature hold (Soak) period.
We will be using our Do-More Proportional-Integral-Derivative PID Instruction with PWM output that we looked at last time to apply the ramp/soak profile. This will be done on the BRX Do-More PLC.
Using the immersion heater in a cup of water to keep the temperature at a constant value, we will be adjusting the profile of the temperature as we increase the setpoint (Ramp) and hold that set point for a predetermined time. (Soak) We will then decrease that temperature back to the original setting. (Ramp)
We will be modifying our existing program from our PID with PWM Output post. Let’s get started. Continue Reading!
A Proportional-Integral-Derivative algorithm is a generic Control Loop feedback formula widely used in industrial control systems. A PID algorithm attempts to correct the error between a measured process variable and the desired setpoint by calculating and then outputting a corrective action that can adjust the process accordingly and rapidly, to keep the Error to a minimum.
Here are some references on PID control:
PID without a Ph.D. By Tim Wescott
Understanding PID in 4 minutes
PID Control – A brief introduction
PID Controllers Explained
Who Else Wants to Learn about On-Off and PID Control?
We will be using an immersion heater in a cup of water to keep the temperature at a constant value. Using the Do-More Designer software we will perform an autotune on our PID instruction.
Our immersion heater will be controlled through a relay using time proportional control from our PID output. Let’s get started! Continue Reading!
We will now look at inc and dec 512 registers using the BRX Do-More PLC. This is to control DMX512 fixtures.
I was recently asked the following question after posting the Analog Dust to Dawn program:
” I was wondering if there’s an easy way to increment and decrement a range of values.
e.g. I have a range of registers (V100 ~V611) the values in each register are different. But I want to increment or decrement all the registers values by 1 at the same time. So that the ramp rate is the same.
Is that possible without having to do 6 rungs of logic for each register?
To elaborate a little on my use case. 512 registers were chosen because that equals one DMX universe. So my scaling factor is 0~255.
16 channels are mapped to two BX-08DA-2B modules to control 0-10 fixtures. All other channels are mapped to SERIO module to control DMX512 fixtures and other devices.”
We will be looking at the DMX512 protocol and how to control 512 registers at a time using our BRX PLC (Do-More). Let’s get started! Continue Reading!
A dusk to dawn sensor usually is discrete on/off of the lighting control. If we want to vary the lights to mimic more of the sunset and rise, we would use an analog output to control the lights. I was recently asked about such a program. Every day they wanted the lights to go off at 10 pm and come back on at 6 am. At 9:30 pm the lights would be on at 70% or 7volts of a 0-10V signal. In the next half hour, the program will bring the lights from 70% down to 0%. In the morning the lights will come back on within the half-hour from 0% to 70%. Poultry Farms are one place that would utilize this program.
We will be developing a program that will do this with our BRX PLC (Do-More). Let’s get started! Continue Reading!
We will now look at the BRX Do-More HTTP JSON instructions in the PLC. One of the features of the BRX Do-More Series PLC is the ability to expand its capability to fit your application. Software and hardware changes are ongoing so the PLC can grow with your needs. Communication is something that the BRX Do-More PLC can do very well. As part of the internet of things (IoT), the BRX Do-More will share and exchange data. You can also refer to this as the industrial internet of things. This will suit several industrial applications.
The Do-more Updates Release 2.5.2 on April 22, 2019, has introduced new instructions. Here are the instructions that we will be using:
HTTPCMD – HTTP Request / Response with Server (BRX only) Do-More
JSONPARSE – Parse JSON Text (BRX only) Do-More
We will be using these instructions to read the weather conditions from a website. Let’s get started. Continue Reading!