Jump to content

Grampa_of_Oliva_n_Eden

Members
  • Posts

    2,767
  • Joined

  • Last visited

  • Days Won

    17

Everything posted by Grampa_of_Oliva_n_Eden

  1. Long thread little time to read, excuse rep's. I gave up on MAX config years ago since maintaining it was labor intensive (abandoned in LV 6.1). Since then I explicitly (most of the time, yes sometimes small bugdet projects warrent short cuts) do all of the configs myself as driven by config files. Yes I have to write all of my own config code but I would rathe have the power than have my hands tied (A customer has an app developed by a third party since then out of buisness. Scaling in MAX is used but since teh scale factor they need has hmmmm... 6 leading zeros before the number but MAX only shows 5... can't fix MAX!). Doing my own scaling let me log the raw scaled along with scale factors (used by govenrment agengies that want to track back measurements with calibration etc). I don't have to be an expert at DAQmx but I exploit the wizards. Craete a task in MAX that gets close. >>> Creata a DQXmx constatn on diagram >>> Choose the teas you created >>> Choose "Generate Config and code". LV will wire up a diagram with the proper flavors and properties for you. I then suck these into my code. Hints: Input and Output Properties can have the same name but you can't set an output property for an input channel. So watch for input vs output. Add clear error eneuciations so that when someone goofs your config they will get a story to go with it. Ben
  2. Not a good one but maybe inspiration... Forget about using transparent but rather get the image and put it in a Picture control. Put an image of the control (the one rendered on this layer) in the right position and cache the bounds of the control so when a user clicks you can determine if the clcik get handled here or not. If not, pass (what does THAT mean Ben?) teh click to who ever owns the sub-panel. I did something similar using all Picture controls and LVOOP to develop a "Controls on the Fly" app that used this basic idea. One object had mouse down etc events registered against a Picture Control and that object would then fire-off a queue message to the Active Object that realized the "widget". When the image of the widget changed it pushed a queue message back at the Picture Object who would update the region of the screen that needed changed. The active Object allowed the widget to update without being acted on by others (e.g. A scrolling marque). I did not saty I had a good idea, only an idea. Ben
  3. Did not watch the videos but I can share some was that thought could be understood as valid. 1) DSA used to be a black art that only hardware could keep up with. THe software versions have covered that couldren for all but the most demanding apps. 2) With NI hardware working so reliably, the focus is on the actual science rather than the EE smoke and mirrors. Although these points are valid they aren't much different from the computers themselves where very few peolpe actually understand what is happening inside the CPU but make very good use of it lacking that familiarity. So we are equally walled-off from what it takes to smelt the metal we need to make nails. This is part of the evolution of technology and is equally a concern as our lack of knowlege re: growing our own food. On a similar note I finally made the decision to retire my "Scope Cart" (O'scope PS etc) from my work-shop just this week-end. Ben
  4. Wild guess (all I got). Tripple click the wire to make sure its wired where it is supposed to be wired. Ben
  5. You can configure the 3d graph to show you the project onto any of the planes you wish. Ben
  6. I'll read "default" value in a way other than the standard def in LV re:default value. If you just want to set those to a specific value when you press the button use an event case that fires from the button and then use locals or property>>> value nodes to set the value. Ben
  7. From my experience that is a good sign. In order to avoid Highly Coupled objects, we have to do some things that seem awkward in a non-LVOOP context. I have a set of hardware Classes that can have different channel types. So the agregating class has an array of channels that can vary depending on which flavor of hardware i am using today. Since the parent hardware classes do not know what kind of cchannles their children will have, the channels seem distant and useless in the parent classes. This is actually good (I think) becuase this is a lack of coupling and makes the parents flexible. Now the children that know what type of channels they expect are responsible for interacting with the channel detials so they have to do thing like casting the channel classes such that they can invoke the method appropriate for each. THe "Factory" Design pattern maybe good for you to look at. Ben
  8. I don't know what my hands are doing when that happens but I have been suprised to come back to a icon and find the header has been flipped upside down. Ben
  9. I posted a link to this thread in the Indians thread on the dark-side. It can be found here. http://forums.ni.com/t5/BreakPoint/Indians-thread/td-p/994562 Note: It is post number 1098 in that thread so go to the last page to find the post. Ben
  10. Also do you know why it is not possible to change numeric indicator's size VERTICALLY? It only could be resized horizentally!!! Farid Font size Ben
  11. There is no place like home. There is no place like home...

  12. Heading to Israel while Yair is away (:

  13. Missing from that list is a song for those not at NI Week or the one-man-shops based on the song "I'm so Lonely" Ben
  14. Duplicate post on the Dark side found here. http://forums.ni.com/t5/LabVIEW/checksum/m-p/1204899 Ben
  15. My first exposure to references was in OS theory for VMS. A File refernce is something we all use but there is a lot behind the file reference. The folowing may differn in Windows but this is how it went. When we open a file, the OS has to do a lot of work to get it open in our behalf. All of the details about that file are stored in a data struture defined by the OS that tells us where on the disk the file is, if it s open, how it is opened (write protect) etc. These where called a FAB File Atribute Block. Somewhere inside that structure was a pointer to another sturure called a RAB Record Attribute Block that would be used to map physical memory to the proper sectors on the disk. The pointer could take two forms dirrect or indirect. A dirrect pointer held the Virtual address of the first byte/word of of the FAB. An indirect pointer would hold the address where the address of the data structure was located. So as I understand them (just sharing notes) when a pointer (direct or indirect) is used to gain access to a resource (file I/O point, etc) it is commonly refered to as a reference. again, just my 2 cents, Ben
  16. My head keeps think that "A cluster is a collection of RELATED datatypes" but that may just be a left over artifact of Codd and Data Normalization rules. Ben
  17. I just got off the phone with Laura and there are no reservations required. Get your food wonder over and sit down. Ben
  18. Dilbert walks into Dogberts office and asks; "Do you notice anything differnt about me today" Dogbert replies; "Yes you have three pens instead of two, one of each of the primary colors." Dilbert replies; "There are secondary colors?" Original by Scott Adams of course and retold via the questionalbe memory of an old guy that wears a pocket protector. Ben
  19. Ben tries both the top and bottom of his bi-focals and asks out loud... "Do we really need a smaller font?" Be careful what you wish for, it may just mean an early retirement. Ben
  20. And I say "Thank God for Dauklu !" You are taking my hand and walking me deep into the LVOOP forest pointing out the pit and traps along the way. Ben
  21. Thanks for that post. This is something that just sunk in with me this week-end. I managed to stumble into a messaging pattern but was troubled by the fact that the Messsaging Class only had a generic Class taht it passed around but I needed to slam other stuff into it depending on where it was being used in my grand scheme. I really did not want to cast the generic in the two classes that where using the messaging service because it seemd wrong somehow. I ended up convincing myself that cast the generic class recieved from the Messaging stuff into the class I waanted to share between the two interacting classes was OK. I tried it out with a couple of variations it worked beter than I expected since the messaging is completely decoupled now so I can re-use that class and scheme again. The actual message passed are special and unique to the interacting classes so having them both coupled to the class they use to comunicate is OK as well. So agian tahnks for the post. It is always nice to find you accidently stumbled in an accepable answer. Ben
  22. Yes late to the game but for the sake of completness, all of the above can be done with a Waveform Chart except setting history legth at run time. See this thread on the dark-side for an example. http://forums.ni.com/t5/LabVIEW/How-can-I-update-the-x-axis-to-match-a-time-reading-in-a/m-p/160205#M95365 The trick is to only have a single value in the "Y" array and the chart will plot the point determined by the t0 of the wf data type. updates do not have to be periodic but you can NOT plot backwards in time (all to's must be increains or the chart resets). Ben
  23. I have never used that approach to implement HDLC so I can't commnet dirrectly on that implementation. Please include some more detials of your test situation and exactly what you expect and what you are seeing. Ben
×
×
  • Create New...

Important Information

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