Prev: read and write retain variables(flags) modbus with labview and wago 750-842
Next: more imaq usb problems
From: d_a_stuart on 23 Feb 2006 13:40 I am trying to run the Parallax USB servo controller directly thru LabView, and stuck. I?m not very familiar with USB controls and commands, so help would need to come at a very basic level. I know the servo and controller are both working, as I can control them with Parallax?s software in real time. This means commands are being successfully sent via the USB cable. The USB version of the controller comes with its own software, but that doesn?t help, so I looked for the manual for the older serial version, and DL?d the manual. I?ve also downloaded the vi examples that are found at parallax. <a href="http://www.parallax.com/dl/sw/labviewbs2.pdf" target="_blank">http://www.parallax.com/dl/sw/labviewbs2.pdf</a> The problem is that the assumption is that the Servo Controller is receiving commands from a Basic Stamp, such as the Board Of Education. I need to address the SC without the middle-man, which I know is possible because the software for the PSC-usb lets me do just that. I understand the SYNTAX of the examples in the manual, but am having problems with how its sending to the controller. What I?ve tried: If I use a terminal emulator, like RealTerm, if I send !SCVER? With a terminal carriage return, I get the version number. If I set the input text in the labview program to ?Code? (as suggested in an earlier post here) and type !SCVER?\r The Read Window outputs !SCVER? 1.4 Which is somewhat confusing, but livable. It?s acting like it?s echoing the SEND string, as well as reading the actual output from PSCusb. Also, I set the VISA configure to send a terminal carriage return automatically, but still need to manually input the \r. BUT when I try to enter commands that require more than one piece of information, like reading servo location or setting servo position, I get no response. The examples in the manual give the commands as [?!SC?, channel, rate, lowbyte, highbyte, CarriageReturn] So, to send the servo from position 250 to position 1250 (one extreme to the other) with no delay on channel zero, the command string should be something like !SC 0 0 250 1250 \r I have tried all different combinations of spaces, quotes, commas, etc. and its still not getting the servo to move. I assume that there is some way that the BasicStamp software breaks up the commands. Clearly I can?t send !SC002501250\r As it wouldn?t be able to tell where channel stopped and rate started. So, what do I need to do in order to get this thing to move? Do I need to send each parameter individually? Any help would be greatly appreciated. I?m pretty sure if someone knows how to this with a terminal, I can make it work in labview. Sincere Thanks! |