Jump to content

rharmon@sandia.gov

Members
  • Posts

    91
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by rharmon@sandia.gov

  1. Trying to communicate with a TRIPP-Lite UPS via USB port. I thought this was going to be easy, Tripp-Lite sent me the protocol, creating the words to send and what to expect for answers. I was ready to go, but now I'm seeing they use HID Protocol. Which I had never heard of, but that's not so unusual.

    There is no com port, they use an ip address in the tripp-lite software. There is no network connections to the hardware so I'm guessing the ip address is being used by the software to address the USB Port.

    I'm just lost, is there something in labview that addresses HID communications? Do I use VISA? Do I create a raw port and assign it a ASRL number?

    Can someone point me in the right direction?

    Thanks,

    Bob Harmon

  2. I want to launch up to 12 cloned vi's from a top level vi.

    launching and then stopping them at different times.

    I want them to run as Preallocated Clone Reenterant Execution.

    I intend these clones to run for an extended periods of time months to maybe years.

    And finally I want to send information to and from the clones to the top level vi.

    What method of communications to and from clones would you suggest?

    Thanks for your thoughts...

  3. I want to thank everyone for taking the time and effort to help me here. It's going to take me a few to digest all the comments, but I'll try to answer some suggestions now.

    1. Normally I would write one vi and hold the reference and just keep the file open while writing then close the reference when done, that said in this case I was worried about the size of the file and not sure if keeping the file open might cause an error in the first place. I should have tested this theory offline.

    2. Question, what does the flush file do? How does this help me?

    3. This is a 32 bit machine, and as usual I never even considered the restrictions. I'll look into this. I think this was the normal modal labview error popup, but it's gone now.

    4. The Desktop Execution Trace is a great idea... I'll do that.

    5. Not sure the leak comes from this VI, but it was the one I was most worried about from this portion of code. Most all of the code used in this portion of the code has been used and run for months without errors. But my problem could come in from anywhere... Hope the Desktop Execution Trace utility helps me here.

     

    Again... I truly appreciate the input. I'm sure it improve my labview coding... Thank you all....

  4. I've written a large program to control an operation and gather data. This program could eventually need to run for months at a time and gather data. The control portion of the program has run for months with out errors. But the first test to gather data lasted about 4 hours before I got the LabView Memory Full Error and crashed the program. Now I'm trying to figure out what caused the memory full problem. I really don't think this is the issue, but I was hoping to run it past some experts to make sure I wasn't making a stupid mistake.

    I'm writing to a text file with an .xlsx extension mostly for easy access and readability to several people. I know the file is going to be large. During most of the operation I'm taking data about every 5 minutes, but during ramp down cycle I'm gathering data every second for anywhere from 5 - 30 minutes.

     

    I start by initializing a vi with the file path and initial data

    image.png.afeedf57c829267d5803683f9693c075.png

    Then i add data to the file during the program

    image.png.3c17f99ca19e6941b69c52f7dd1bf21c.png

    Finally I close out the file (If I ever get here!!!)

    image.png.80445a208d5b0273aa6f15728bbd2687.png

     

    Does anyone see any obvious stupid mistakes, or any reason this might cause a memory full error?

    Thanks for looking...

    Bob Harmon

    Close.png

    Init.png

    Log Data.png

  5. I need to convert a string (+0056A4K+005640_000353________) into two temperature readings.

    I get the first character is the first temperature reading polarity, and I get the seventh character is the thermocouple type. it's what's happening in the middle that has me stumped.

    How do I convert 0056A4 to the temperature. I've attached the image of the directions, but I can't figure them out.

    Any help would be greatly appreciated.

    Bob

     

     

    IMG_1942.jpg

  6. James,

    The Aerotech Actor is launched to a subpanel in the previous init steps, the actor is running in the subpanel. What sort of bug would cause the address to be dropped. How would I discover this bug, or better yet how would I go about fixing the problem? Should I re-write the Aerotech actor? Or do you think the problem may be in my Top Level Actor?

    Thanks,

    Bob

  7. Hi James,

    I'm attempting to register two actors in my top level.vi. I've done this before in past projects, but for some reason following the same template I'm getting the following error:

    Error 1 occurred at SendMSG.lvlib:Messenger.lvclass:Send.vi:2280001

    Possible reason(s):

    Attempt to send message to a virtual (non-valid) messenger.

    Message label: "RegisterByLabel"

    Not sure where to go from here... Any Ideas?

    Error.png

    Register.png

  8. I think I've boxed myself in pretty good this time.

    I need to change the options list in several combo boxes inside a cluster. Maybe better described I need to keep a test file of options that can be loaded into combo boxes when a vi loads.

    Is there a way to accomplish this or do I have to pull the combo boxes out of the cluster... Maybe there is a better control I can use that I can change the options inside a cluster... Maybe not...

    Any ideas out there???

    Thanks...

  9. Thanks infinitenothing for the input... Here is some more info...

    1. Files are copied to a RAM drive on the top level computer. I know that SSD's are about as good today, but when I first set it up the RAM drive was the best.

    2. I currently use 10 reenterant vi's running in parallel and the files get transferred as quickly as the top level can store them. Haven't run into trouble with this option yet. but I want to do other things on the top level vi while the transfer is going on.

    3. The files are contained in a single folder on the computer and the entire folder is moved to the top level computer.

    4. Database is a possibility, I would still need to look into.

    Still trying to determine what the best options are today because I'm re-writing the main top level vi

     

    Thanks again.

     

  10. I need to setup what I think will be a non-reentrant daemon vi, I'm writing a Top Level VI that will need to move hundreds of files from 10 computers to a single computer for processing. I want to move these files in the background not effecting the the top level vi until the moves are completed.

    As I envision it, I will launch 10 vi's from the top level, each assigned to move files from a computer to the top level computer. I'm hitting a brick wall on how to build this.

    Does this approach make sense?

    Is there an example somewhere that explains how to set this up?

    If you wanted to accomplish this what approach would you take?

    Thanks for your thoughts in Advance...

×
×
  • Create New...

Important Information

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