Jump to content

ShaunR

Members
  • Posts

    4,871
  • Joined

  • Days Won

    296

Everything posted by ShaunR

  1. I think you'll find I didn't comment on your suggestion before at all. I just shut up because I was told to stop reading because it was POOP. They are talking about Onion and Chain Routing of messages. The former is (in your terminology) an envelope inside an envelope inside an envelope ...ad nauseum. The latter is an envelope with a friends address with a "please forward to this other friend ".....ad nauseum. I'm just suggesting they just send it directly to the recipient by using a dispatcher. I have no idea how it would be implemented or what your "envelopes" do. I'm sure Daklu would come up with an elegant solution given the description if it was viable. For me, it's just a case of using a keyword in a string and making sure something is listening for it but the principle is the same. Therefore it is Chain Routing with a fixed 2 level depth.
  2. Don't know much about this API so may be missing a fundamental implementation aspect here. But if you have a "RouteTo7813R message" (which you presumably you must have for a reciprocal receive case). Is there a reason you cannot have just one wrapper layer (lets call it "Router") and all it does is, well, route? The arguments could be Target, Sender and Payload Message.
  3. Rule 36 & 38 You have a timeout of 5000ms in two locations, so it's not definite that the open is failing from that. But if you follow rule #36 and #38, you will have a better idea what is happening and you can show the error with the Simple Error Handler at the end..
  4. 1) I am very smart for very short periods with very small pieces of code and have a FIFO memory retention(without google ). Therefore my LV utils toolkit is very smart and I just have to be clever enough on a daily basis to remember which part of the toolkit solved that problem last time. It's the difference between being smart and being experienced 2) I architect my code at a level well below my abilities since debugging is twice as hard as writing code and therefore I'm not competent enough to debug code written to my ability (to contextually quote Brian Kernighan). Oh. and a framework is an architecture without the important bits (quote: ShaunR)
  5. My definition of "Code Smell" is completely different to that in the article. To me it is a behaviour that indicates a particular bug or type of bug. They are already here if you are talking about pre-processor commands - Conditional Disable. But I feel your pain, not necessarily with FORTRAN, but certainly C where everyone has their own definition of INT and "macros" that can be considered cryptographically secure.
  6. Ditto what hooovahh said (for right click menu). If you just want to copy the text from one location to another, use the edit/cut/paste in the labview main menu which are mapped to Ctrl+C, Ctrl+V etc. It may seem a pain for things like a text control where you are used to windows copy and paste on a right click menu, but it makes more sense when you are copying entire arrays or clusters.
  7. Hi Ton As I understand it, 17025 (like the old ISO 9000) is really a quality documentation exercise. So as long long as you can "argue" the case with documentary evidence, I don't really see that you cannot be compliant. Of course, if you normally rely on proxy validation (our box is certified and within the certification date, therefore this measurement is certified) or you usually use an accepted standard procedure, then it is a lot more work as you have to detail the methods, quantify measurement errors and get them signed off by an accreditation authority. In your case, the key here is probably: Source (Section 7.2)
  8. That has been my experience with the entire Linux community. When you get the answer "install linux" in answer to any windows question - You just wonder what they do as a real job.
  9. 50 feet should be fine. The "rule of thumb" is Less than 100 feet is "usually" OK for most thermocouples. Ignoring interference, impedance matching and cold junction compensation, It basically boils down to the total loop resistance. The total loop resistance is a calculation based on the diameter and length of the thermocouple wires. Thermocouples usually have an impedance per foot/meter parameter and the thermocouple loop resistance should be less than about 50 ohms (don't forget 1 foot off a thermocouple spool is 2m of loop wire). You will notice in the NI-9211 spec there are compensation values for impedances greater than 50 ohms so it doesn't mean you cannot use greater, just that compensation must be applied. There is of course a maximum limit due to the sensitivity of the input circuitry, but you should be fine as long as you are not using wires the size of a gnats whisker. So which idiot didn't order RTD if the temp range is 0-60 degC?
  10. OK. Maybe you have taken a colour image, but you have taken a colour picture of a grey object against a grey background. The dominant colour will still be "GREY". A quick and dirty (although not foolproof) method is to just look at the mean of each colour component. A better but much more complicated method is to use K-means clustering. I don't know of any LabVIEW examples off-hand, but here is one you can translate from Python.
  11. It was a joke. It is a grey-scale image, therefore it can only be grey
  12. When you query for the services (Bluetooth RFCOMM Service Discovery.vi) you need to have the "Serial Port Profile" returned as one of the services available and then select that service in your Index Array to get the Channel and UUID for the Bluetooth Open the Connection.vi. If it's not in the list, you may have to enable it in the phone settings (refer to the manual) or use a 3rd party driver on the phone to give it to you over bluetooth (some phones only have it for usb connections). Also, some Android phones have a bug where the profile isn't broadcast.
  13. Any old android phone with 3G/HDSPA will do. You just connect with a usb cable or bluetooth(for older ones). Latest models have Wifi tethering and can even set the phone to be a wifi hotspot (so you can connect several devices)
  14. Use your mobile phone for wifi tethering (3G is about 2Mb up/down). Hotels usually require you to go through a webpage access gateway which wont work for VPN and besides, you can then work on trains, coaches or whilst having a beer cofee in the local . 3G dongles are OK, but make sure it is one that accepts a SIM rather than locked to a provider otherwise you will have to get a new one for each country you visit (phones are just easier). Get your IT to set it all up and test it BEFORE you go and SMS all the settings to your phone. For cheaper calls/internet I've always found it a lot, lot cheaper to buy SIMs (usually free) in the country with top-up cards (roaming charges are sometimes 10-20 times the local prices). It also has the advantage that you don't have to try and find coverage for an in-country provider that is buddied with your home provider so you can choose the best service (ask the locals). You can then claim it all back on expenses Companies love their VPN systems but the best system I have ever used, by far, is Hamachi. We could transparently remote desktop in via satellite to PXI racks sitting on oil rigs in the Gulf of Thailand just as easily as to the lab next door. They just appeared as nodes within 2 mins of getting the satellite dish up and running. The field engineers just went from one platform to another setting them up whilst I sat in the air conditioned comfort of the beach hotel (WiFi teathered) and configured them as they appeared Another point. It's always useful to have some sort of Chat program on the PCs you are supporting. If you are troubleshooting and it requires some human input, you can paste snippets, passwords, and error messages to each other much more easily than talking about it, especially if the PC is nowhere near a usable phone..
  15. FPGA_TARGET_FAMILY is another useful one since multiple models have the same FPGA (SPARTAN3, VIRTEX5 etc)
  16. You need to select the "Serial Port Profile" from the list of services (your second array index which selects whatever the first is in the list) and you need to terminate with rn rather than just r
  17. You have forgotten to take into account the X.RngeStart value.
  18. I don't see any problem with it. After all. The VI description is the help (in the IDE) and the VI name is by default the same as the on-disk name which only palette writers really care about. I would argue that exporting strings is no reason to do anything though, since it is the worst translation tool ever, (Hence the reason I wrote Passa Mak many moons ago).
  19. Use "IMAQ Convert Rectangle" instead of "IMAQ Convert Rectangle (Polygon)"
×
×
  • Create New...

Important Information

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