I am in a lab doing a summer internship and need help communicating with an Omega CN7500. I have been searching on the internet for the past few days looking up ASCII protocol and trying to use the manual that comes with the device but I have had no luck learning how to communicating with it on my own. I found a VI that tells me a process value and a set value (attached) which is a start but I also need to be able to change the set value and PID settings which I am having a very hard time learning how to do. I am a chemical engineer so I am not well versed in computer science at all which is what this project is turning out to be. I really need someone to break down the the ASCII protocol for me and can show me how to effectively communicate the set value and PID settings to the device using the VISA serial options in LabVIEW.
This is not so much computer science as control engineering (about which a chemical engineer should learn the basics). It may also be about Omega's documentation.
I have never used the CN7500 but some of Omega's other devices have horribly poorly written documentation. Even someone who knows how the stuff works can have a hard time figuring out exactly what needs to be done.
1. Move the Configure and Close VIs outside the loop. Only configure and close once. Write and read as often as you need inside the loop.
2. Unless that is the only command you will ever use, you need to determine how they calculate the checksum and create a subVI to do it. If you change any character in the command string, the checksum will change.
3. Does the CN7500 allow remote conrol of the setpoint and PID parameters? Some Omega devices are read-only.
4. Plan on trying some things and running quite a few experiments to learn how to communicate with the device. Since you can read a few data points with the VI you have, go through the manual and find other commands which will make the device do something you can easily verify (such as changing the display from C to F and back). Try to get that working. See what has changed from the first VI.
5. Try to generalize from that to more commands or all the ones you need. Commands with parameters (such as setpoints) are more complex and may be more difficult to learn to implement than simpler commands.
So I have been messing with it a lot more and I feel that I'm starting to understand it to some extent. I wrote a program that I will actually be using for the my system but for some reason I cannot get it to write to the temp controller. I have input the command string manually that I get at the end into another program and it changes the set value no problem but it won't do it automatically. Another thing that happened is I tried to transfer it to another VI and it added extra \'s to the \r\n so it looked like \\r\\n which could be the problem, I'm just not sure how to fix that. I have tried adding that part of the command string at the end and a few other things and it still doesn't work. Any suggestions?
I did get it to work, the problem I had was that the string was in a normal format and had to be in a backslash code format. You can change this by right clicking on a string and opening "properties". You should see "display styles" in the right middle area, which you can then change to backslash code format. Hope this solves your problem
Trying to do much the same thing - running everything else in labview 7.1 - anyone have a screen shot or a compatible version? Cheers!
Which version of LabVIEW is irrelevant.
Are you not understanding the previous post that describes the solution?
Thanks for the quick reply. Sorry - as I can't see the details of the problem being solved (both vi's above require newer labview to open) I would just like to be able to see the vi s that are being refered too. I hope I can then open them and follow the discussion of how it was made to work? Thanks.