Jump to content

Sam Dexter

Members
  • Posts

    26
  • Joined

  • Last visited

  • Days Won

    1

Sam Dexter last won the day on January 28

Sam Dexter had the most liked content!

LabVIEW Information

  • Version
    LabVIEW 2018
  • Since
    2015

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Sam Dexter's Achievements

Apprentice

Apprentice (3/14)

  • Collaborator Rare
  • One Year In Rare
  • First Post Rare
  • Conversation Starter Rare
  • Week One Done

Recent Badges

2

Reputation

  1. Thank you guys. Yes, sorry, it works. I just kept trying to install ni-labview-2025-pro while I downloaded the community edition. My bad.
  2. Yes, followed it to a letter. There is no natinst in usr/local.
  3. Wonder if anyone can tell me where to get an ISO file for Linux LabVIEW and, maybe, give a few pointers on how to install it, exactly. I've tried to download it from the NI website but the "Offline Install" does not work at all and the on-line installer does something that I do not quite understand. After all, I cannot find LabVIEW on my computer. Any suggestions? log.txt update.txt list.txt upgrade.txt
  4. Thank you Michael. Good point. Yes, I've noticed the dynamic approach here and there as well as using SoftMotion with EtherCAT but had no chance to dive in yet. I will take a look at the other methods later this year when we start working with ELMO (Platinum) drives.
  5. This is by no means a full EtherCAT tutorial but, rather, introductory notes. Please, feel free to add to this post, expend and/or correct any mistakes and information.
  6. A peculiar thing about the EtherCAT slaves is that you must have an ESI (EtherCAT Slave Information) file for your slave. This is an XML file that describes the EtherCAT specifics and application specific features of the device. Those are available form the device manufacturer's site, e.g. https://new.abb.com/drives/connectivity/fieldbus-connectivity/ethercat/ethercat-feca-01. If you cannot get an OEM's XML file for your device, you can (theoretically, I've never done it myself) edit one of the existing files (or create a new one) either manually or with a help of special ESI Editors (cost money and, usually, manufacturer-specific). E.g. https://github.com/CopleyControlsOfficial/EtherCAT-ESI-File-Examples.
  7. NI article: https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000YHbbCAG&l=en-CA
  8. So, what I dug up so far: 1. Many compactRIO can be set up as an EtherCAT master. You don't need any special hardware for that. In fact, even your laptop Ethernet port can be turned into an EtherCAT master with the proper set of drivers (not covered in this post). Nevertheless, check if your chassis supports EtherCAT mode - go to https://www.ni.com/pdf/manuals/374786m.html and see if it listed under Supported EtherCAT Masters. 2. Download EtherCAT drivers here - https://www.ni.com/en/support/downloads/drivers/download.ni-industrial-communications-for-ethercat.html#485587. First, check your LabVIEW compatibility with the EtherCAT drivers here - https://www.ni.com/en/support/documentation/compatibility/17/ni-industrial-communications-for-ethercat-and-labview-compatibil.html. Install the drivers to compactRIO under Custom Software Installation. Configure one of the Ethernet ports as EtherCAT master.
  9. We've just got an ABB EtherCAT communication module for ACS880 - FECA-01 and were absolutely sure we won't have any problems creating a LabVIEW control application for it. However, we got stuck from the very beginning. We found practically no examples or instructions on how to create an EtherCAT application from scratch. There are a few examples, mostly related to setting up a project with NI-9144 or similar, but nothing for a custom EtherCAT slave device. I am curious if anyone could provide me with any pointers as to how to set up a project for FECA-01 or point me in the right direction. Thank you in advance.
  10. Dear colleagues and Dr. Powell (hopefully), We've been developing a pretty large project (17 actors) with the Messenger Library for the past few months - great tool and serves our purposes well, however, when we deployed it on cRIO NI-9042 and ran a long-term test, we noticed a slow but steady CPU load increase over time. Enough that with all actors, it will crash the system overnight. It seems that each actor contributes to this, which suggests it is an issue common to the framework Possibly related more to self-addressed messages (how the Messenger Library does periodic actions) than messages between actors Early testing suggests that using timed loops and queues does ‘not’ have this issue General Testing procedure: Run actors with configurations as described here and noted in the title of each plot Have SystemMonitor actor log the average CPU usage and Free Memory over time Plot those values Note that the dX/dt values are just taking the max/min values of each series and plotting the change over time. So it’s just an approximation. Limitations: We do always have the logger writing to the file system. Based on the Test 4 conclusions, I ‘think’ this would not be the core of any problems. Test 1: Just for developing my plotting script Test 2: Pretty minimal-actor test with GUI Showed usage going up over time Test 3: Repeat of test 2, but without the GUI Still showed usage going up over time, though a little bit slower Conclusion: usage is not some bug within the GUI actor Test 4: Run test with all actors Saw usage go up much faster Conclusion: There muse be some CPU increase for each Actor. Which means it is ‘maybe’ not a bug introduced into any single actor, but something common to them all Test 5: Run with all actors, with their ‘read’ rates doubled This would mean that actors would try to read any devices more often, and would involve more self-addressed messages In most cases, this should ‘not’ have increased the amount of messages sent between actors CPU usage went up much faster Conclusion: CPU usage tied to message passing Test 6: Run all actors, with ‘read’ rates restored to normal (hopefully; it’s possible I missed some), but ‘publish’ rates doubled This ‘publish’ rate is for the ‘state’ messages each actor sends to the GUI for display CPU usage went up about the same as in test 4 Conclusion: messages addressed to other actors didn’t seem to increase CPU usage Test 7: Cut out the main body of the Logger and SystemMonitor actors, and run them within timed loops (ie: no Messenger Library) Repeat of test 2, though it’s possible the CPU usage comes from part of the default Messenger Library template that I did not copy Using Queues to pass data from the read loops to GUI updates, so we still have data passing Running the loops at 10x of the main ‘read’ rate for these actors. This will also mean about 10x GUI updates. Status: I ran this over the weekend. When I came back in on Monday, the CPU usage seemed to still be steady at 0.20% I made a mistake in how the logging was set up so don’t have the logs for this I’m re-running the test now. Judging from the Test 2, a few hours should be enough to see an increase Early Possible Conclusion: seeing the CPU not go up over the weekend makes me think this is indeed an issue within the Messenger Library I am looking for any information that can shed light on high CPU load with Messenger Library and possible suggestions on how to mitigate the problem. I hope, you guys can share your thoughts and ideas, and steer me in the right direction. At this point we are too far in the project and have very little time to start over. Please help! Thank you in advance.
  11. Hmm... Interesting observation. Well, it seemed at the time that the Network Variables was a dirt and simple way of passing the data over the network. If not the Network Shared Variables how would you pass the data on the network? Streams? Another comms interface?
  12. The problem resolved. And not the way I expected. While we were thinking and searching for a solution, our techs decided to try another unit, off the shelf. They loaded everything as usual and everything worked out of the box - no fuss , no muss... The offending unit is being shipped to the office for a forensic investigation and I am breaking my head trying to imagine what in the hardware could cause the problem we've seen? My guess is that it could be only the memory. The network itself was working fine so there is no problem with the transport layer. It's gotta be memory, what else?
  13. Hi Jordan, Thank you. No, I am not doing anything extra as everything started to work for me right from the beginning so it is only basic reads and writes.
  14. Had a great success with Network Published Shared Variables from the get-go. Used them on a large project sharing data between multiple devices on the network - worked great. Until one day (yesterday), when they stopped. No change in the code, the same base was running for 4 years on multiple systems (NI-9042 cRIO + NI-9147 eRIO). Yesterday, loaded the code on a brand new cRIO and ooh-la-la - surprise. No more data sharing. Only on a new platform. Loaded the same code on the old one - everything works. Modified the code to make data sharing more transparent for troubleshooting. No, there is no data coming to the consumers. Not sure though whether it is writing to the shared variable or reading from it but the fact is no more data. At this point I am totally baffled to what could possibly happen. Checked the drivers - the Network Variable Engine 17.0 is installed. Although, I am not sure how to check if it is running. I tried to use Linux tools in CLI but didn't see any process name resembling the Network Variables Engine. I wonder if anybody had similar experience or can suggest where to look? Maybe I am overlooking some weird settings somewhere? Like blocked ports or network registration... However, I couldn't find anything, no matter how hard I looked. Any help would be greatly appreciated! Thanks.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.