serial communication control! Help!

Hello guys,.

I am trying to acquire serial port data. I use FTDI serial - usb converter.

I have attached the VI and capture example.

It send CDD1 CDD3 CDD3 to device and device ADD1 ADD3 sending, then I send CDD3 and device begin to measure and send it to the serial port.

The first question is about the current is to communicate with the correct device?

The main question is about the first loop stops when I turn off the device in the middle of transmission (for example) or sometimes I don't know why, if I choose the wrong port to check that everything works well, the port read data, I sent and send CDD3 CDD3. Then the loop 1 none stop!. I want to programately the loop to detect the "time out" and stop the loop.

One thing to keep in mind is that the transmission does not constantly. When start transmission of the device send data, stop for maybe 2 or 3 seconds to change the sensors and send it again...

So, I'd like if someone can give advises me to stop the loop1 when it receives data.

Thank you.

What is the instrument you want to contact?  Should I use a stop character?  If this isn't the case, then turn off the stop character on the Serial Port to set it up.  Avoid using the bytes to Port if possible.  If you know how long of a message receive you, simply read as many characters.

Tags: NI Software

Similar Questions

  • VISA + Serial Communication - need help!

    Hello world

    I have a lot of help with my project of this forum and I'm looking for more . Thank you for taking the time to help. Please bear with my as I ask a LOT of questions.

    I intend to control a frequency converter using its series terminals and send orders from my PC + LabVIEW it. The commands do the basic functions like, start, stop, speed up/down etc etc. I use a converter Series USB to transfer data.

    Now, I ve played with examples like SERIAL COMMUNICATION VI and others and I begin to understand the functioning of VISA.

    Q1. In order for LabVIEW + VISA contact my frequency converter, do I need to install some sort of a driver for him to recognize? The frequency controller is old ages, even I don't know and I don't think I can find a driver for it any time soon? What kind of driver I'm looking for? Is it possible to customize my own driver and which would be easy?

    accessory included - process.jpg

    I downloaded some pictures about the problems of data format. I need to send information to the converter to format "telegram" as shown in the image below. Each 'function' in the 'format telegram' has varied length in bytes: some have 1 others have 2, other 4...

    I also downloaded an image called "Format.jpg" which indicates what information each of these 'functions' will contain. Note:-the frequency converter uses only the last 4 bits.

    Say for example:

    START function will have this bit of information-

    Start the Byte - ASCII ' 59 "

    Address - 00

    Control character -? I'm not sure what it should be I need to use the converter based on parameter values - is confused on what to choose - C, U, I or r Start, stop, etc. have their own specific parameter values such as 402, 404 RESP, so I guess I want update (U)?

    Word of State control -? depends on the previous action

    Sign - do not necessary

    Data - 0

    Comma - is not necessary

    check the sum - is not necessary

    Stop the Byte - ' > ' (ASCII: 62)

    Phew... How would I go about clubbing this whole format together to send a control signal? Put all this information in a table allow somehow?

    Please help to me... to achieve desperately need...

    Thank you

    Sandeep

    It would be useful that you could find a driver, but it is not absolutely necessary to have a. You can write your own, use the Instrument i/o Assistant, or use VISA readings and some discreet.

    The format of the commands is a bit complicated but not impossible. You just need to be careful to have the exact number of bytes.

    What I don't see in the atttachments, it is possible words to control and the State and the number of parameter. I hope these are in another part of the manual.

    A bytes example (without the control and settings) to update the frequency to 12.34 could be '<00U________+123403??>'.

  • Serial communication error VISA with LUDL stage controller

    Hello

    I'm trying to control a micro-positionnement made by Ludl stage. The model is Ludl MAC2000. It seems that the RS232 comunnication is implemented because I can talk to the controller using HyperTerminal. However, when I want to do the same thing through Labview, I can't answer the controller at all. The vi is roughly the same as the visa basic read/write in the example. Looks like a very similar problem in this post:

    http://forums.NI.com/T5/instrument-control-GPIB-serial/visa-serial-communication-problem/m-p/567065#...

    But the trick of nature of endpoint does not help in my case: I tried to toggle the termination character setting in the property node and different combinations of '\r', '\n' as termination characters, but nothing has worked so far.

    Seems to me there is some difference between the interpretations of the same order to Hyper Terminal in Labview. But I just can't understand what it could be.

    Anyone with a similar experience could give me some comments/suggestions? Thank you very much!

    Another difference between hyperterminal and labview is the speed of sending characters.

    LabVIEW breaks out the whole string to the controller

    HyperTerminal is this character by character. So much slower and slow the controller can be affected by this.

    You could add a loop around the writing of visa (to make it easy convert the string into a byte array outside of the loop and convert it to a string inside and you have a shipment char by char in LabVIEW

  • Programming of the digital I/o pins on the NOR myRIO-9100 for serial communication

    I use NEITHER myRIO for my robot and I want to use four reading of the distance sensors that communicate via the serial port. But the myRIO has only two UART ports on board so I was wondering if there is a way to program the digital pins use for serial communication. Any help appreciated.

    It is possible.  Here is an example that I could find.

    Example of reference to RS-232 for LabVIEW FPGA Interface

  • Serial communication - ignore parity error

    I have a question about how LabVIEW opens a serial port for communication. I communicate with a device that uses a protocol owner. It sets and clears the parity bit to indicate the nature of the response. For example, the orders are sent with the parity bit higher while responses are sent with the weak parity bit (unless the answer is at the end of the transmission, in which case the device sets the parity bit high to indicate).

    My problem is the way that LabVIEW opens the serial port for communication. Using Portmon, that I captured the control indicators, that it sends to Windows to configure serial communication:

    IOCTL_SERIAL_SET_LINE_CONTROL   Serial0 SUCCESS StopBits: 1 Parity: MARK WordLength: 8IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13IOCTL_SERIAL_SET_HANDFLOW  Serial0 SUCCESS Shake:1 Replace:44 XonLimit:64 XoffLimit:64
    

    Note the values 'Shake' and 'replace '. In my view, they are originally bytes with parity errors is removed. A separate RS232 Comm Debug tool that I use with success looks like this:

    IOCTL_SERIAL_SET_LINE_CONTROL    Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8IOCTL_SERIAL_SET_CHAR  Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13IOCTL_SERIAL_SET_HANDFLOW  Serial0 SUCCESS Shake:0 Replace:80000000 XonLimit:128 XoffLimit:128
    

    Notice the difference in values. By using this tool, Windows does not packages with parity errors - that's what I want. Is there any way to change how LabVIEW opens the serial communication port to achieve?

    I tried to change the parity, where the ILO is defined differently, but I think that I am running in a race condition; LabVIEW can not run the code and change the mode of fast enough parity before the next byte of data is sent by the device.

    Ravens fan: the parity bit, in the proprietary protocol, that I use, is not used for parity checking. Basically, the protocol uses a 9-bit serial communication. The parity bit must be paid or compensated according to what byte do (if it is a command, if it is the end of transmission, etc.).

    I found an old post on this page which seems to answer my question (my apologies for not completely research before posting... I learn the right use/search phrases that I find more information). I download the 3.4.1 version of VISA now.

  • I paid best buy for lightroom 6, put in the code to purchase on the website, but it does not give me a serial number. Help?

    I paid best buy for lightroom 6, put in the code to purchase on the website, but it does not give me a serial number. Help?

    Please read here and see if this helps: https://helpx.adobe.com/x-productkb/global/redemption-code-purchase-help.html

  • I'm moving the standard Acrobat XI to a new computer, but the downloaded software seems incompatible with my serial number.  Help

    I'm moving the standard Acrobat XI to a new computer, but the downloaded software seems incompatible with my serial number.  Help

    your serial number is 6 groups of 4 numbers, find the serial number of your product Adobe quickly

  • I have Adobe Acrobat 9 Pro and serial number.  She asked an older serial number?  Help, please?

    I have Adobe Acrobat 9 Pro and serial number.  She asked an older serial number?  Help, please?

    Hi juneb55782770,

    I think you have a upgrade to Adobe Acrobat Pro version, in this case it will ask for the serial number of the previous version of qualification.

    You can find your old serial number using this link: quickly find your serial number

    Hope this will solve your problem.

    Answer please if you still have a problem.

    Kind regards

    Nicos

  • Downloaded CS5 Master Collection on new computer, but install says serial number is not valid.  Serial number controlled by tech support rep and that goes for CS5, says it's a matter of technique.  Help.

    Yesterday I bought a new iMac.  Downloaded the CS5 Master Collection on the Adobe site, but install says that my serial number is not valid.  I double checked with my products on my profile, and the number is correct.  Says Adobe technical support it is a technical problem, but my serial number IS valid for CS5.

    Hello

    Please see this link for more details: error of incorrect serial number

  • Problem formatting of serial communication

    I am communicating with a host machine that spits out data on the serial port.  I'm using fairly standard settings (9600, 8, N-1) and I'm getting data.

    The problem is the formatting of the data.  Obviously, the data are supposed to be fixed width, but the fields are moved after each CR/LF.

    Some examples of data:

    0   |    0.925.    0,833 |   110.444 |   549.278 |    23.812 |
    |  2   |
    0   |    0,921 |    0,832 |   106.971 |   480.604 |    24.464 |
    |  3   |
    0   |    0.926 |    0.831 |   114.320 |   555.821 |    23,785 |
    |  4   |
    0   |    0.920 |    0.830 |   108.434 |   587.374 |    23.411 |
    |  5   |
    0   |    0.925.    0.836 |   106.459 |   554.808 |    23.717 |
    |  6   |
    0   |    0,923 |    0.830 |   112.048 |   507.875 |    24.242 |
    |  7   |     0
    |    0.924 |    0,837 |   103.943 |   605.860 |    23.181 |
    |  8   |     0
    |    0,921 |    0.831 |   108.303 |   582.447 |    23,459.
    |  9   |     0
    |    0.925.    0,827 |   118.501 |   426.680 |    25.118 |
    | 10.     0
    |    0,922 |    0,826 |   116.223 |   483.567 |    24.527 |
    | 11.     0   |

    Any ideas what may be the cause?  There the series parameters that may change the data format?  I get the same results using LabVIEW and hyperterminal.

    I have No control over the host (long story).

    Thanks for your help.

    Set the properties of your VISA to "activate the term on readings tank" = TRUE and "term char" = 0x0A (line feed).  Configure your reading to read MORE characters that you expect and each reading will end when we see a 0x0A. (you can remove the warning from VISA if you wish.

    -What happened to the cursor - this lack of cursor's post a little harder! Laura_F - is this known?

  • Serial communication does not work in an executable file.

    I created a vi that communicates with a serial device. It works fine on the computer on which it was created on. I then created an application and then built an installer to put it on another machine. The second machine doesn't have a LV 2009 on it. Once installed on the machine the vi does not work. When it is running on the computer with LV 2009 the com port control is a pull down, and it lists all agrees on the computer, and then you select the one you want to connect with. The vi is installed on the computer does not list the available com ports. This leads me to believe that there is no support Comms series in the installable version. What should I do now? I noticed that you can add "Additional installers" when you build the installer and one of them is NEITHER Serial 3.4. I'm trying to add this and a message says that he had to get, so I used it thinking it was more that I needed and this standard com port driver would be included. Am I mistaken or did I miss something? Any help is greatly appreciated.

    [email protected]

    I'm sure that NEITHER Serial is the driver for COM port cards of NEITHER, and that very probably that you have to install NI-VISA.  You can add the VISA installer as an extra Installer for your application.  It may ask you a DVD during the build process, because even if the software is already on your computer, the installer so it probably isn't.

  • reading serial port control

    I am trying to establish a connection to an external device via the serial port. This is done in a while loop that sends a request to the association is trying to get a response if a response is not received a new rewuest is sent, etc. At the present time, this procedure does not work. I am considering two explanations for this. The first is that the loop does not wait long enough for a future response and continuous pumping motions, the other is simply that there is something wrong with the algorithm of reading, which don't take correctly into the serial port information.

    Have you even considered that the "application of the association" that you send is not correct. More often than not, the reason why you get nothing to read is because you not write properly. You have not posted anything related to this function and display of an image is not the best way to get help in this matter. For certain types of entries, it is important to determine whether your control/string constant is set to normal display, '-' display Codes or hexadecimal display.

  • Can't get bytes of CPU to read in LabVIEW * FTDI * Serial Communication *.

    I have trouble to get LabVIEW to display the bytes I send from a microcontroller with a FTDI chip.

    Specifications of communication are:

    baud-19200

    -8-bit word length

    -1 stop bit

    -no parity

    -no flow control

    I modified the demo of the chain of read-write of the here just reading the chip. I see that a few bytes have been read in the indicator "bytes read" but nothing appears in the buffer. Any ideas? I may have something hooked up wrong or something wrong in communication specifications


  • Problems with the simple serial communication.

    I followed a tutorial online to start learning basic communication series. The involved tutorial shorting pins 1 and 3 on port 1 Comm and write a simple program (attached). I've edited it a bit, the program to see varied results I get when trying to write and read a simple sentence via a serial port.

    Could someone explain what causes the kind of result shown in "Serial Comm example.png"? I think it has to do with timing. Why would be transmitted only the parts of the sentence?

    Thank you

    Sarah

    sarahzig wrote:

    The involved tutorial shorting pins 1 and 3 on the Comm 1 port

    What should be pins 2 and 3?  On a standard serial port DB-9, pin 2 is the receive and pin 3 is the transmission.

    Now for your code...

    1. move the Serial Port to be before the loop to set it up.  Simply configure the port once.

    2. close the port after the loop.

    3. managing your error after closing.

    4 stop your loop on an error or the stop button has been pressed.  You will need a RC in there.

    5. no need to Flush Buffer function.  Remove it.

    6. using the bytes to the Port is a dangerous thing.  It introduced all kinds of race conditions that are interesting.  Instead, say VISA reading to read the number of bytes that you expect to read.

    6a. Moreover, don't forget to send a character to end of line at the end of your data and all the number of bytes to read something a lot more than you ever expect read.  The VISA read will stop reading when he a) sees the number of bytes, it was said to read, b) sees the stop character (currently enabled and set to a line break, which is part of the end of line), or c) the time-out occurs.  Whichever comes first.

    7. with 6, the wait is no longer necessary.

  • Serial communication is blocking my time loop

    Hello world. I need your help with my program. I use LabView2014 and a B2902A Agilent.
    I want to measure the current value with my instrument continuously, store the values of every second and the display of the messages received through the serial port when I'm gone.
    Everything works perfectly separately, but when I put everything together I have this problem: my instrument is waiting for a message from the serial port to take (and display) a measure.
    You have an idea to save my problem?
    Thank you!

    Pauline

    (Please find attached a screenshot of my program)

    Use the byte to serial port to check if a message is available and read only when a message is available.

Maybe you are looking for