Click PLC Send and Receive Serial Communication Instructions

  Рет қаралды 29,126

ACC Automation

ACC Automation

Күн бұрын

Click plc send and receive serial communication instructions that can be used to communicate to external equipment. We will be communicating serially to a temperature controller using Modbus RTU serial RS485.
Receive and Send instructions will allow you to send and receive serial data to an external device. The communication method that you setup can be ASCII or Modbus. ASCII (American Standard Communication for Information Interchange) can be used to send to devices such as a printer. Receiving ASCII can be used for connecting barcode scanners to the PLC. The barcode will be read as an ASCII string in the PLC. Modbus serial communication (Modbus RTU) is a standard protocol used in many automation devices. We will demonstrate the Send and Receive instruction by communicating Modbus to a Solo Temperature Controller. Our example will read the current process (PV) value and write the setpoint value (SV) in the controller.
More information can be obtained on our website. This includes all of the links mentioned in this video.
accautomation.ca/click-plc-se...
00:00 Click PLC Send and Receive Modbus RTU Serial to Solo Temperature Controller
00:35 Solo Process Temperature Controller Setup
02:17 Modbus RTU Communication Parameters
02:57 Click Modbus Recieve Instruction
03:38 Click Port Setup
04:40 Solo Modbus Read Addresses
06:40 Click Modbus Send Instruction
07:32 Solo Modbus Write Address
08:49 Testing our Modbus Communication - Click to Solo
09:14 Data View Monitoring
Previously we discussed:
Click PLC System-Hardware.
accautomation.ca/click-plc-sy...
Click PLC Installing the Software
accautomation.ca/click-plc-in...
Click PLC Establish Communication
accautomation.ca/click-plc-es...
Click PLC Numbering System and Addressing
accautomation.ca/click-plc-nu...
Click PLC Timers and Counters
accautomation.ca/click-plc-ti...
Click PLC Compare and Math Instructions
accautomation.ca/click-plc-co...
Click PLC Program Control Instructions
accautomation.ca/click-plc-pr...
Click PLC Shift Register Instruction
accautomation.ca/click-plc-sh...
Click PLC Drum Instruction
accautomation.ca/click-plc-dr...
Download the Click Programming software at the following address:
support.automationdirect.com/...
There are several reasons why we are using the Click PLC. Here are just a few.
- Investment is low for the hardware and the software is free (Low Cost PLC)
- Standalone PLC with built-in I/O
- Communication ability - Ethernet Port, RS232, RS485 - support for protocols such as Modbus RTU, Modbus TCP, etc.
- Ability to expand the system with a variety of modules including RTD and Thermocouple inputs directly.
www.accautomation.ca

Пікірлер: 52
@Zork876
@Zork876 3 жыл бұрын
Hey Gary, thank you very much for all of your great videos. I’ve got a question regarding the RS485 connection. Can you just connect the ports with basic wire? I’m trying to connect a Click PLC with the Autodirect MQTT gateway and use Adafruit as a broker. This is my first time with anything like this so forgive me if this is a silly question. Thanks once again!
@ACCautomation
@ACCautomation 3 жыл бұрын
Hi Zork 876 Thank you for the comment. Yes, you can use any wire, but a twisted pair is recommended. This would be especially true if the communication wire is run beside any other wire. I have done a similar video using the Stride MQTT Gateway. accautomation.ca/stride-mqtt-gateway-to-adafruit-io/ accautomation.ca/stride-mqtt-gateway-click-plc-modbus-rtu-tcp/ I hope this helps you out. Regards, Garry
@Zork876
@Zork876 3 жыл бұрын
@@ACCautomation Thank you so much, it's very much appreciated. I now have the devices connected and am following you tutorials to send messages to adafruit. Thank you so much once again!
@ACCautomation
@ACCautomation 3 жыл бұрын
@@Zork876 Thanks for the feedback. I'm glad you have got it working. Congratulations! Garry
@Zork876
@Zork876 3 жыл бұрын
@@ACCautomation Hi again Gary, I’ve been following your tutorials and feel so close you achieving communication. But I have hit a wall and was wondering if you’d have an idea as to what’s happening? Currently on my PLC, I have an interrupt program that repeatedly turns on and off Y1. Then, in my main program, I have an NO set as a 100 ms clock (SC5) turning on a send box that has the modbus address 65535 as the slave and Y001 set as the master. Adafruit is giving the message “Error saving data on (Username)/Feeds/Y1. Data missing required value” Do you know what may be wrong? Is there any more info I’d need to give? I completely understand if you cannot answer these questions. Thank you so much for your help so far!
@ACCautomation
@ACCautomation 3 жыл бұрын
@@Zork876 Adafruit will use MQTT protocol to update the feed that you have created. The Click PLC does not support the MQTT protocol. You will need a gateway to act as a client to collect the data from the Click PLC and send/receive it to the Adafruit feed. accautomation.ca/stride-mqtt-gateway-to-adafruit-io/ accautomation.ca/stride-mqtt-gateway-click-plc-modbus-rtu-tcp/ Regards, Garry
@keithcress1335
@keithcress1335 11 ай бұрын
I didn't like this video... I loved it!! Clear and to the point with great audio. Thank you very much.
@ACCautomation
@ACCautomation 11 ай бұрын
Thank you for the comment, Keith. I appreciate it. I'm glad you found it helpful. Garry
@Aluminio258
@Aluminio258 4 жыл бұрын
I just need to thank you for the simplicity and effectiveness of your videos. It helps me a lot.
@ACCautomation
@ACCautomation 4 жыл бұрын
Hi Jesus, Thanks for the comment. It made my day! Garry
@jaytalbot1146
@jaytalbot1146 Жыл бұрын
The SOLO is perhaps unusual as far as MODBUS devices go, since the more common way of changing parameters is a human pushing the buttons (which is slow) and it is desirable for the parameters to be retained after a power cycle. Therefore, as far as I know, the parameters are written to the EEPROM each time they are changed. The problem is that EEPROMs have a finite write endurance (perhaps 100,000 times) writing to one ten times a second may kill it pretty quickly, like in hours. It would be best to only write to the SOLO when there is an actual change. Now it is possible that the SOLO checks if the data actually changeds before writing to the EEPROM but considering how slow manual set point entry is, I don't know that they would have bothered doing that. SOLOs are expensive enough that I don't want to test it myself.
@ACCautomation
@ACCautomation Жыл бұрын
Hi Jay, You are correct about the EEPROM for the change. I would just figure out if you need to write to the Solo. If you do, then include this in the cascade of communication. If not, then this is bypassed. This post will show you how this is done. accautomation.ca/click-plc-serial-communication-timing/ I hope this helps you out. Regards, Garry
@ericperrine9204
@ericperrine9204 3 жыл бұрын
great videos Gary, just got into plc programming as a hobby. any chance you could do a video introducing a c-more touch panel?
@ACCautomation
@ACCautomation 3 жыл бұрын
Hi Eric, Thanks for the comments. Most videos have a website post as well. Here is the complete series on the Click. accautomation.ca/series/click-plc/ I also have done series on the C-More and Micro C-More. C-More EA9 accautomation.ca/series/c-more-hmi-series-panel/ C-More Micro EA3 accautomation.ca/series/c-more-micro-hmi/ Let me know if you have any questions. Thanks again, Garry
@ghazalfeiz2205
@ghazalfeiz2205 7 жыл бұрын
Hi, thank you for the helpful videos. I was wondering if data extraction as an excel file is possible using Click PLC.
@ACCautomation
@ACCautomation 7 жыл бұрын
Hi Ghazal You can use VBA in excel to request the data using Modbus TCP (Ethernet) or Modbus RTU (Serial) Protocols. Here is a post that shows communication using Modbus TCP. accautomation.ca/how-to-implement-modbus-tcp-protocol-using-vba-with-excel/ Another way to do this is to use visual studio and AdvancedHMI. Visual Studio can then communicate to excel. Here is another link to show you how to implement this method. accautomation.ca/create-a-plc-with-hmi-training-and-learning-environment-free/ Regards, Garry
@Hopyoda
@Hopyoda 4 жыл бұрын
Thank you for all the videos that you have put together on the various products as this saves me months of time. IF the resgister read instruction from the solo was for 2 master addresses and it started at 404097 to store in Master DS20, do I assume the next register read is 404098 and that is stored in DS21? Also, you mentioned using the output bit to trigger the next instruction. Would you then add a ladder rung with a contact to read another solo as another slave that is triggered by the success of the prior read?
@ACCautomation
@ACCautomation 4 жыл бұрын
Hi Hopyoda, Thank you for the comments. You are correct. When you read multiple addresses you point to the starting address (404097) and where to store. (DS20) The following addresses will then be moved. (404098 to DS20...) The success and error flags can be used by the previous Read/Write instruction to trigger the next. Use the leading edge (one-shot) of the flags to trigger the next read or write. I will usually start the communication by the first scan bit. Thanks again for the comments, Hopyoda. Garry
@Hopyoda
@Hopyoda 4 жыл бұрын
@@ACCautomation That command structure worked great to read the first SOLO PID as slave 2. When I tried to add another rung to read the next SOLO PID that is Slave 3 I can get the read on the first but I get a transmit and an error on the second slave. There is no error code shown though. I had the second rung triggered by an edge contact using the C3 that was assigned to the success bit of the prior read. Any thoughts on how I can read 4 or 5 slaves? I'm hoping it was not how the MODBUS 485 was wired since they are literally inches away from each other.
@ACCautomation
@ACCautomation 4 жыл бұрын
@@Hopyoda I would also include the NOT receiving flag as well before executing the next command. This will ensure that the communications have finished and the network is ready for the next command. Regards, Garry Let me know how you make out.
@qzorn4440
@qzorn4440 7 жыл бұрын
hi, is there a way to read/write to a Click floating point DF1_428673_modbus using the advancedHMI Ethernet to set analog values with a decimal point? thanks.
@ACCautomation
@ACCautomation 7 жыл бұрын
Hi q zorn Registers in the Click PLC that are larger than 16 bits must have a prefix to tell how AdvancedHMI will treat the variable. DD Registers -DD1 - L416385 - L - Long DF Registers - DF1 - F428673 - F - Floating Point Other prefixes that can be used are as follows: U - Unsigned - Example DS1 - U400001 B - BCD (Binary Coded Decimal) - Example DS1 - B400001 This is from a note in this Click PLC Series: accautomation.ca/click-plc-advancedhmi-communication/ Hope this helps you out. Regards, Garry
@saurabhsharma6173
@saurabhsharma6173 6 жыл бұрын
Can you upload a video of ramp/soak ladder logic ?
@ACCautomation
@ACCautomation 6 жыл бұрын
Hi Saurabh, I will take a look at setting up the Solo for a ramp soak function and then use the Click to change the registers. I cannot say when this will be done. Will keep you posted. Thanks, Garry
@ansarfasilullah2431
@ansarfasilullah2431 4 жыл бұрын
Hi, thank you for all the wonderful videos you put up. Iam currently working on a plc program with Modbus RTU using click plc. Send and recieve command works perfectly, but iam facing issues when i have multiple send commands in the same program. Some send commands dont seem to be success/send. What do you think i can do differently? Thanks
@ACCautomation
@ACCautomation 4 жыл бұрын
Hi Ansar, Thank you for the comments. When working with serial communication, you must make sure your timing is correct or the instructions will not be sent. Do not use timers alone for multiple send commands. Use the first scan bit to start the communications. Then use the not receiving, success, or error bits from the previous instruction to trigger the next communication instruction. I hope this helps you out. Regards, Garry
@ansarfasilullah2431
@ansarfasilullah2431 4 жыл бұрын
Garry Shortt many thanks. Let me try that.
@ACCautomation
@ACCautomation 4 жыл бұрын
@@ansarfasilullah2431 Let me know how you make out. Thanks, Garry
@ansarfasilullah2431
@ansarfasilullah2431 4 жыл бұрын
@@ACCautomation I did manage to get the timing right. But still it would be great if you could have a quick look at my program.kzbin.info/www/bejne/gXe9XoOiht2bgas Though send commands seem to be working with Modbus slave running in background, when i connect to the actual HVAC system when multiple coils are energised there seems to be a problem. The devices start and stop repeatedly rather than staying on until the coil is de-energized. My program recieves input registers from the slave devices, I then use it in a small logic loop which drives an output coil (virtual y1,y2,y3...). These values are then send using a send command back to the slave to start the indoor aircondition fan coil unit. What could be wrong, Appreciate your advise. Thanks
@danielmarkvideo
@danielmarkvideo 2 жыл бұрын
Hey thanks for the video, good info. I am trying to monitor/control 4 different SOLO's this way... do you have a video on setting something like that up through modbus? Thank you!
@ACCautomation
@ACCautomation 2 жыл бұрын
Hi, danielmarkvideo, Thank you for the comment. The following post will show you how to communicate Modbus RTU to the Solo process temperature controllers. accautomation.ca/click-plc-serial-communication-timing/ Here is the video for the post: kzbin.info/www/bejne/rZOqkHWBmMmIZ80 I hope this helps you out. Regards, Garry
@danielcombs4875
@danielcombs4875 2 жыл бұрын
@@ACCautomation Great Thank you! This is danielmarkvideo...I was able to get the receive to work perfectly, however when I used the send instruction the SV appears on the SOLO4848 but then goes away a second later. Any thoughts? You have helped me a ton working through these! Thank you!
@ACCautomation
@ACCautomation 2 жыл бұрын
@@danielcombs4875 It sounds like you are doing multiple writes to the same Solo Modbus. If you can send me your program, I may be able to see what is going on. garryshortt@accautomation.ca Thanks, Garry
@danielcombs4875
@danielcombs4875 2 жыл бұрын
@@ACCautomation Hi Gary, I figured this issue out, I had the error code address the same as the master... so it would send the PV over, then when it saw there was no error it would send a 0 back to the SOLO. Now if I can just get the CLICK to talk to the RHMI through ethernet! Thank you!
@ACCautomation
@ACCautomation 2 жыл бұрын
@@danielcombs4875 Hi Daniel. Thanks for the update. The following post will show you the connection from the Click PLC to the C-More RHMI. accautomation.ca/c-more-ea9-hmi-series-headless-rhmi-to-solo-and-click-plc-controllers/ I hope this helps you out. Regards, Garry
@millerelex
@millerelex 8 жыл бұрын
How do you know all this stuff about Click?? I can only find you and windows help : /
@ACCautomation
@ACCautomation 8 жыл бұрын
Hi Steven I have been using PLC's since the late 80's in college. AB 2/30 with DH was my first PLC that I learned. When I worked for Omron as an automation specialist, we use to get the new product (PLCs) without the english manuals. We would have to hook up the PLC and start playing with the instruction set to see what it could do. When I heard about the Click and then looked at the instruction set I knew this was a great little PLC. The price of the unit is even better. Regards, Garry
@ryanbusch4015
@ryanbusch4015 6 жыл бұрын
not only the price of the PLC but free programming software, gotta love it. man poking around without English manuals and before the age of google translate! sounds like the PLC school of hard knocks! you often learn the most when you have to learn the hard way. great videos btw. i might take a stab at connecting an AB PanelView800 to a click PLC here shortly, going to have to use MODBUS (RTU) from what i can tell. its all pretty new to me so great help to find videos like these! in getting a better understanding of these things.
@williamsvasquez6490
@williamsvasquez6490 Жыл бұрын
GOOD VIDEO! I have a question, how can I not only receive 1 modbus data but now I want to receive as 10, I wrote a code but when I execute the code it is as if the data is not received well, I need your help. thanks in advance
@ACCautomation
@ACCautomation Жыл бұрын
Hi Williams Vasquez, Thank you for the comments. If you have 10 or more receive instructions, you will continue using the success and error flags to add additional instructions. I would change the first receive instruction to the first scan flag or the success and error flags from the last receive instruction. I hope this helps you out. Regards, Garry
@mumbles1justin
@mumbles1justin 2 жыл бұрын
Would you by chance know where I can find information on implementing TTL serial communication? Preferably information using either Click PLC or BRX PLC.
@ACCautomation
@ACCautomation 2 жыл бұрын
Hi Justin, The following link discusses the signals from TTL to RS232 and why you need a converter. www.sparkfun.com/tutorials/215 What protocol are you planning to use? The Click and BRX are both capable of sending ASCII in/out of the ports. Here are a couple of posts: accautomation.ca/brx-do-more-plc-modbus-ascii-protocol/ accautomation.ca/click-plc-modbus-ascii-protocol/ Here is a converter that will convert TTL to RS485 for the Click or BRX. amzn.to/2YAnbsz TTL to RS232 amzn.to/2YtB4ZI Regards, Garry
@mumbles1justin
@mumbles1justin 2 жыл бұрын
I have 2 use cases. 1) I want to add the ability directly interface with wiegand card readers and keypads. 2) Im wanting to read/wright modbus over TTL to control (4) icharger 406 duo battery chargers. I was hoping to be able to use either the BX-16CF3F2 module for the BRX or C0-08ND3-1 for click. I have a couple of the amazon converters you suggested but Im not have much luck with that one. It could be I dont have something configured right though.
@ACCautomation
@ACCautomation 2 жыл бұрын
@@mumbles1justin Wiegand is a wired communication interface that operates between a reader and a controller. It does not look like you can use the TTL digital cards that you have specified. You would need a Wiegard to Serial converter to interface to the BRX or Click through the serial ports. getsafeandsound.com/2018/09/wiegand-protocol/ Here is a link for the converter. amzn.to/3oMvjRQ Looking at the icharger 406 duo, it looks like you will need a TTL to RS485 converter in order for this to work. www.jun-si.com/UploadFiles/iCharger_MODBUS_Protocol.pdf Here is a link for the converter. amzn.to/3uXIUqA Note: I have not worked with either of these devices. Regards, Garry
@davidharris6974
@davidharris6974 6 жыл бұрын
Can you have a cmore hmi switch change ds1 to 0 and at the same time change ds 2 to 1?
@ACCautomation
@ACCautomation 6 жыл бұрын
Hi David, The C-More HMI Swich will turn on a bit within the PLC. You can then use the bit (One Shot) to copy 0 to DS1 and copy 1 to DS2 in the PLC logic. Hope this helps you out. Regards, Garry
@davidharris6974
@davidharris6974 6 жыл бұрын
I used the copy command it seems to work, Have you tried to control a GS1 drive with the program in the manual they show? It seems not to let the drive turn on
@davidharris6974
@davidharris6974 6 жыл бұрын
You seem to be good at understanding the click programming so I am curious to know if you see a mistake in the manual.
@ACCautomation
@ACCautomation 6 жыл бұрын
Hi David, I have not tried the program in the manual for the Modbus RTU communication to the GS1 drive. cdn.automationdirect.com/static/manuals/gs1m/ch5.pdf Are you getting allot of communication errors? Regards, Garry
@ACCautomation
@ACCautomation 6 жыл бұрын
Hi David, Setting up communication using modbus RTU from the click requires timing of the modbus instructions. I do not see this in the example program provided in the manual. I have done a multiple read / write modbus program for the click in the following post. accautomation.ca/click-plc-advancedhmi-communication/ The Click PLC program can be downloaded here: www.dropbox.com/s/2f375yy6crpjh7c/AdvancedHMI%20to%20Click.zip?dl=0 You will see that I have used a shift register and timer to set up the timing of the Modbus commands. Hope this helps you out. Regards, Garry
@davidharris6974
@davidharris6974 6 жыл бұрын
I used the copy command it seems to work, Have you tried to control a GS1 drive with the program in the manual they show? It seems not to let the drive turn on is there a mistake in the manual program?Read more Show less Reply 1
@ACCautomation
@ACCautomation 4 жыл бұрын
Hi David, I have not tried to control a GS1 drive yet. Here is an article that shows exactly what you are doing. support.automationdirect.com/docs/an-gs-018.pdf I hope this helps you out. Regards, Garry
BRX Do-More PLC Modbus ASCII Protocol
20:04
ACC Automation
Рет қаралды 2 М.
Click PLC Serial Communication Timing
12:35
ACC Automation
Рет қаралды 2,5 М.
DEFINITELY NOT HAPPENING ON MY WATCH! 😒
00:12
Laro Benz
Рет қаралды 63 МЛН
Nastya and SeanDoesMagic
00:16
Nastya
Рет қаралды 31 МЛН
Click PLC AdvancedHMI Modbus Communication
7:37
ACC Automation
Рет қаралды 17 М.
Click PLC Shift Register Instruction
8:06
ACC Automation
Рет қаралды 13 М.
Productivity 1000 Series PLC Click EtherNet/IP Remote IO
18:44
ACC Automation
Рет қаралды 3,1 М.
BRX Do-More PLC Data Logging
12:39
ACC Automation
Рет қаралды 2,4 М.
Click PLC Drum Instruction Sequence
7:43
ACC Automation
Рет қаралды 18 М.
CAN Bus Explained - A Simple Intro [v2.0 | 2021] 🌟
14:44
CSS Electronics
Рет қаралды 220 М.
Servo Modbus RTU Tutorial using the CLICK PLC and SureServo2
9:49
AutomationDirect.com: Drives & Motion
Рет қаралды 4,8 М.
Click PLC to Click PLC Communication Ethernet
10:08
ACC Automation
Рет қаралды 4,4 М.