All Activity

This stream auto-updates     

  1. Today
  2. Last week
  3. AzeoTech

    ModbusTCP error. Two software devices

    It looks like whatever you have happening is occurring every 5 seconds. Since your Timing is set to 1, I can only assume that you have one of your ports set with a timeout value of 5. The bottom line, though, is that you are getting Timeouts, meaning the device is not responding to queries. The Timing Lag / Port Locked errors are ancillary and caused by the repetitive Timeout errors. It is hard to tell exactly what is happening or which device is causing the issue, though it appears to be one with Offset = 0.68 and 0.73, so look there first. There are a lot of things that could go wrong with the comms, but if it was working at one point, and now not working and the device is powered up, I would first look to see that you don't have an IP address conflict on your LAN. I would also double check that no one changed the IP address of the device. Next I would set the Timing of all your channels to 0 and try just reading one channel from each device. Use the command/alert window and just type: read(myChannel) where mychannel is the name of some channel. Have the comm monitor open for the desired device to see if you are getting a response. Once you find one that isn't responding, figure out why. Once you have everything communicating while reading one channel, you can reenable the TIming back to 1.
  4. You will have to excuse me for speaking in layman terms. I have inherited a SCADA system that was installed pre 2008. The system consists of 15+ moxa units spread across multiple locations. We have two Pc’s running the DaqFactory software. Recently we have enabled some new alarm inputs and updated the graphics. Now we have a problem with the SCADA system notifying us of alarms. When the new alarm inputs were tested on completion of the update, both software’s (device 1 and device 2) alerted of the alarms and the pop up notifications that were set up worked every time. However, after a month of working correctly the alarms have begun failing to activate on both devices every time device. Sometimes the alarm will alert on device 1, Sometimes the alarms will alert on device 2 And sometimes the alarms will alert on both. The errors being displayed in the Command alert are PmodusTCP 0010 timeout and C1038 timing lag acquisition stalled. These errors are different on each device and clear when the software is closed then reopened. I have tried changing the offset timings on the new alarm inputs but this has not been successful in rectifying the issue. Can anyone assist with this issue? I have added a few photos. Feel free to request any further information and I will endeavour to provide it. Thanks in advance.
  5. Salvatore

    Acquired data format change

    Dear admimistrator, I hadn't any problem with FIO channels; I asked you as, in first acquisitions, I observed some strange data, and I asked you for a check. Thank you very much. My best regards Salvatore
  6. Jeyjey

    Long-term Graphing

    Hi Guru, That is exactly what I want to do. Thank you for the advice. I will have a go at doing this.
  7. AzeoTech

    Long-term Graphing

    So you want the bottom axis graph to be zoomed initially, then expand to 28 days as new data comes in? This is not an issue, but does require you to change the X axis scaling parameters accordingly and not use the Time Width feature Also note that 1 second data over 28 days is a lot of data, 2.4 million data points in fact. Because of memory limitations, you will need to use the Persist feature of the channels to offload some of the data. Accordingly, you will need to set the Y Expression of the graph to subset so that persist data is accessed. For example: myChannel[bottomaxis.currentScaleFrom, bottomAxis.currentScaleTo] Change "myChannel" to the name of your channel. The "bottomAxis.currentScaleFrom" and To are variables of the graph that return the current scale from / scale to values used in generating the graph.
  8. AzeoTech

    Acquired data format change

    Then that should be correct. Are you have an issue with this inputs?
  9. Earlier
  10. First question would be why you don't just automatically create the directories on startup if they don't exist. The File. functions give you that ability. But as to your question, that really depends on how you setup your system and what you want to stop. Stopping channels with Timing is a little hard. For that, you'd have to set your Timing to 0 and either trigger reads from a sequence or programatically set the Timing values when you are ready. Everything else is much easier. For Logging sets, PIDs, etc, just make sure they aren't marked auto-start and then start them from script when ready. For Sequences, again, make sure only one is marked auto-start. Have this one display the desired page. The desired page would then have a button to continue which would then start a second sequence that change to the main page and start up all the other scripts, logging etc you have. I do not recommend using a modal popup. Just use a regular page that displays first.
  11. AzeoTech

    Disable to run second runtime

    Not built in. You could try and implement something using a registry variable or file. I would do it by writing a timestamp to that registry variable/file every few seconds and then when an instance starts, it reads it and if the time stamp is within, say, 10 seconds of the current time, it displays a message and quits.
  12. I am trying to setup a first page such that it stays up and program execution stops until a button is pressed on that page. It's a page to check if the logging directories exist, so 2 buttons, one will be to create the directory structure and the other will popup a system message saying "Press ok to quit as no directories are setup". I guess I'm trying to make the page modal but also stopping further execution of the program until the choice of button is made.
  13. Hi, Is there any way to check runtime.ctlis running or not? I want to don't allow user to make mistake to open second runtime.ctl file.
  14. Salvatore

    Acquired data format change

    Dear Administrator, thank you for your answer; digital FIO channels are all inputs. My best regards Salvatore
  15. Jeyjey

    Long-term Graphing

    Each graph will be updating at an interval of 1 data-point per second. So I pretty much want the X-axis (time) to be increasing until it shows the whole 28 days worth of data-points. I believe this won't be an issue?
  16. AzeoTech

    Acquired data format change

    I think part of the problem is that you are using the .csv extension which stands for "Comma Separated Values", but you are then separating your values with a semicolon. Excel is getting confused because it is looking for commas. I would start by trying to use a different extension, maybe ".txt", at which point Excel will likely ask you what you delimited with when you load the data. Are the digital FIO channels inputs or outputs?
  17. AzeoTech

    C1000 channel or function not found

    I am assuming line 7 is the case()? I'm actually surprised you get any error since you have a try/catch() with no error indication. You should almost always put a: ? strLastError inside your catch() so you know when there is some issue. I would add a ? datain after the readuntil(), or just add a breakpoint and look at the data. I don't see anything else really wrong.
  18. That is most likely due to the flow control settings not being supported by your specific comm port. That particular error message occurs when DAQFactory asks Windows to configure the baud, byte size, parity, stop bits and flow control settings of your port. The other possibility would of course be an unsupported baud, byte, parity or stop bits, with baud being the most likely of those 4.
  19. AzeoTech

    Long-term Graphing

    DAQFactory should not have an issue with this. At what interval will you be acquiring the data?
  20. Jeyjey

    Long-term Graphing

    Hello, I am about to start a project where I need to be able to view a force-displacement, force-time and displacement-time graph on the DAQfactory software. I will have 3 x Labjack T7 to set up 9 stations. So I will be looking at 3 graphs per station which mean I will have a maximum of 27 graphs running in the software. I need to be able to test up to 28 days (data-logging and graphing) and it could sometimes be with multiple stations simultaneously. I primarily want to press a button and start the testing, then all the graphing from the start till the end (up to 28 days) needs to be viewable on the page. Do you see this as a limitation in the software? Look forward to hearing from you. Thank you!
  21. I'm using my ctl file with a new PC running Windows 10 IoT Enterprise. I am having trouble getting DAQFactory to recognize my COM ports. The new PC is able to successfully initialize the COM ports and read from multiple slaves using Modscan as a test, but when I try in DAQFactory, I get the error message: "Unable to initialize Com1: Can't set port settings".
  22. Gorkhali

    C1000 channel or function not found

    My data format is: T, 2021,04,02,15,03,23\013 I can see the data comming inthe comm monitor but I am getting error: C1000 Channel or function not found: Line 7 The code I have written to parse this data is: global String datain device.Neph.Purge() While(1) try datain = device.Neph.ReadUntil(13) switch case(left(datain,1) == "T") Yr.AddValue(StrToDouble(Parse(datain,1,","))) MM.AddValue(StrToDouble(Parse(datain,2,","))) DD.AddValue(StrToDouble(Parse(datain,3,","))) HH.AddValue(StrToDouble(Parse(datain,4,","))) MN.AddValue(StrToDouble(Parse(datain,5,","))) SS.AddValue(StrToDouble(Parse(datain,6,","))) endcase catch() endcatch EndWhile What could be the possible error? Thanks!
  23. Salvatore

    Acquired data format change

    Dear Administrator, please, could you tell me if it's possible to have all acquired data read as numbers by Excel? Thank you very much. I hope you'll have a good Easter. My best regards Salvatore
  24. Salvatore

    Acquired data format change

    Dear Administrator, I'd like to ask you, please, if programming for FIO0 and FIO1 digital channels in .ctl file I sent you is right. Thank you very much. My best regards Salvatore
  25. Salvatore

    Acquired data format change

    Dear Administrator, here are files you requested: CanaleAN_210322_150245.csv Acquisizione canali2dispositivi.ctl I hope you have a beautiful day. My best regards Salvatore
  26. Works a treat. Thanks so much for your help with this. It's really pretty fundamental to how DAQ-Factory works and I've never realized before now!
  27. Just change your return() statement: return(insertTime(vWork, getTime(vRaw), 0))
  28. I understand it now - that's great, I've tried it and it works. I don't know why I've not come across this problem before - must just be luck of how I've arranged equations used in the OnEvent of channels. I'm not quite sure how I would use it inside the scaling function which is below as I would then have to return it back to the calling part in the OnEvent part of the channel? //Used from the Event of the Modbus Channels function fWScale(vRaw, cMax) private vWork = 0 //Temporary local variable vWork = (vRaw/c16bit) * cMax //16bit full scale = 65535, cMax depending on Type of Anemometer return(vWork) Thanks for the super quick reply. I'm enjoying getting back into Daq-Factory and will likely need another runtime license once I've got it finished.
  1. Load more activity