CAN Transmitt frame on RTSI.

Hi all!
I have a problem, I want to send CAN frames when I receive an RTSI pulse. To do that i configured my CAN Network Interface, and i generated a pulse train. At the begining, i configured the delay between two pulse at 700µs. It seems to work, but i noticed that sometimes after a day or after a week, i get the warning 1073094950 : NI-CAN:  (Hex 0x3FF62126) You configured CAN transmit when a RTSI input pulses, and the RTSI rate occurs faster than CAN frames can be transmitted at the specified baud rate. Solution: Configure the source of RTSI pulse (i.e. DAQ counter) for a slower rate.
I read in the data sheet : When you configure a DAQ card to pulse the RTSI signal
periodically, do not exceed 1000 Hertz (pulse every millisecond). If the RTSI
input is pulsed faster than 1kHz on a consistent basis, CAN performance will be
adversely affected (for example, lost data frames).
After that i configured the delay between to pulses to 1ms and tryed again.... with the same result... sometimes i don't know why i receieved this damned warning !!! I also tryed with 1,6 ms ... (the maximum i can have between two pulses).
I don't know why i have these limitation from this card ! I know a solution will be to use FPGA instead on these poor CAN cards but i don't have the time to rewrite the code with FPGA (i meet the customer next week). So i just want to know if someone else meet this problem (and eventually has a solution) or can explain this strange phenomena ....
Thanks.... for all your futures answers!

Hi dirk!
The port used to send the frame on RTSI pulse is only used for this .... in fact i only used one port of my 2 ports CAN board (as you suggest in your last message). Moreover, i put the comparator and mask to CFFFFFFF (to ignore incoming frames). So there is no other activity on this port !
I already use Network interface this can not be improved.
The pulse train used for the RTSI signal is generated by a NI board, and i checked the signal with a scope, it seems to be ok ... 
The problem is in my application i can not decrease the frequency of the RTSI pulse ... otherwise i will not be compliant with the customer specification. My last idea to resolve the problem is to use two different ports (of two differents boards) to send the frames. I will send a RTSI pulse on each port every 2 ms... i will try and i hope it will work ...
But  again if you have other ideas ....
Thanks !

Similar Messages

  • Send CAN remote frames periodic on RTSI pulse

    Hi. I'm trying to send a remote frame (with the RTR bit set) on receipt of a RTSI pulse from a PXI 6602 timer card. I then need to receive CAN data frames at the CAN card from the instruments with the arbitration ID of the remote frame sent.
    I can do this using CAN object transmits period using RTSI example vi and Cont pulse train vi to provide the RTSI pulse. However this can only send CAN data frames, not remote frames. Grateful for any help on this.
    VIV

    Hi VIV
    Instead of using a CAN Object you can use a Network Interface Object for that. There is already an example that just needs minimal modification.
    If you are using LabVIEW:
    Open the NI ExampleFinder and navigate to the Network Interface transmits CAN frame on RTSI example (Hardware Input and Output » CAN » Frame API » Synchronizing CAN with DAQ » DAQ Card Controls RTSI » Network Interface Objects). Modify the example by wiring a '1' (numeric value) to the currently open 'IsRemote' terminal of the ncWriteNet.vi.
    If you are using C:
    Navigate to the …\National Instruments\NI-CAN\MS Visual C\Frame API examples folder and open the Network Interface transmits CAN frame on RTSI example. Locate the line
    Transmit.IsRemote=NC_FALSE;
    And change it to
    Transmit.IsRemote=1;
    Now, you’re transmitting a remote frame with every RTSI pulse.
    -B2k

  • I want to play video on my computer to make some analysis to frames,the problem that I face ,I can't change video frame rate using labview,but I can change frame rate to the video out of labview using some program

    HI All
    I want to play video on my computer to make some analysis to it's frames,the problem that I face ,I can't change video frame rate using labview,but I can change frame rate to the video out of labview using some program .
    I used IMAQ AVI Read Frame VI
    for example I have avi video It's frame rate is 25 fbs ,my image processing code is very fast that can process more 25 fbs,so I want to accelerate video acquisition

    Hi abdelhady,
    I looked into this further, and reading an AVI file into LabVIEW faster than its frames per second won't be possible. LabVIEW could read in frames faster than 25fps, but because it will be pulling the available frame at that point in time this would just give you duplicate frames. If you want to be able to read in frames at faster than 25fps, you would need to speed up your AVI file before reading into LabVIEW.
    There's a good shipping example to show how to read in from an AVI file, "Read AVI File.vi". You'll notice that they add timing to make sure that the while loop runs at the right speed to match up with the frames per second of the file being read. This is to make sure you're not reading duplicate frames.
    Thank you,
    Emily C
    Applications Engineer
    National Instruments

  • Can two frames use the same SessionInfo object?

    Hi,
    I have some questions on using InfoBus Frame.
    Do parent frame and child frame HAVE TO make use the same
    SessionInfo object?
    I tried to show Master table and Detailed table in seperate
    frame without login twice. I am lucky it works since I happened
    to make two frames have the same SessionInfo object which is
    sessionInfo1 and conmment out sessionInfo1.publishSession()in
    Detailed frame.
    But when I tried to pass Master frame SessionInfo object to
    Detailed frame there is nothing showing up in the detailed frame
    it is just blank frame.
    So two frames have to use the same SessionInfo object . Dose it
    make sense?
    I would really appreciate anyone who can enlighten me on this
    subject.
    Thanks you so much for the attention.
    Julie Chi
    null

    Gopal (guest) wrote:
    : HI,
    : Julie Chi (guest) wrote:
    : : So two frames have to use the same SessionInfo object . Dose
    it
    : : make sense?
    : Yes, if you are working with a master details relation, data
    for
    : both need to be fetched from the same oracle session. So both
    ur
    : frames need to refer the same session. If u refer the detail
    : frame to a different session, u will not see any data, because
    : the information comes from a different oracle session which is
    : not aware of the master data that is fetched. I think it is
    : clear.
    : regards,
    : --Gopal
    1.Use wizard and test the frame
    2.pass the sessioninfo object in parent to child(put method in
    child, call from parent e.g ..getsessionInfo(SessionInfo ss)
    3.pass the sessioninfo object to rowsetinfo in child
    4.add Database authentication (username/password is sufficient)
    methods right before publish method
    *publish activates RowSetInfo and connects to db
    5.add methods in parent to call child
    That should work though depending on how you have set up your
    wizard generated java form, might tweak
    Thanks
    iggy de iguana
    null

  • I cannot play movies, it seems the the movies have loaded ok because i can see frames, but it wont play.

    essentially i click on a movie and it seems to go onto the play screen ok, however the screen it black.  when I click along the movie I can see specific frames that the cursor hands on but the movie will not play.
    Is there a way I can fix this myself?

    I have had the same problem since the latest Adobe Flash update. I have the same problem in IE too. I also have the problem with some YouTube videos at times and a certain video at another website. These are ones I can remember and it didn't start until I updated Adobe Flash. Google Chrome uses it's own flash, so when I use that browser, no problem. So it must be Adobe Flash update being flawed. Maybe it can be rolled back to an earlier version? For doing that, try this link. I haven't fully check it out yet, just found it at the same time I came across this thread.
    [http://forums.adobe.com/thread/1022066 How to roll back Adobe Flash to earlier version.]

  • Can Poster Frames flow in from Premiere 2.0?

    If I am creating a timeline in Premiere 2.0 and then exporting as an AVI for import into Encore 2.0, I can mark chapters in Premiere and they will be included in the AVI file in Encore. However, Premiere does not seem to let me indicate poster frames for these chapters that will flow into Encore. Thus I have to create the poster frames in Encore. If I have to remake the file in Premiere, then I have to re-create the poster frames again when re-importing to Encore. Any ideas on how to solve this issue? Am I doing something I should not be doing? Thanks.

    There is no way to indicate poster frames in PPro 2.
    However, one workflow item you may be missing is to embed a project link before exporting from PPro 2. Then if you want to change anything in the video file after creating your chapter points and poster frames in Encore, select the asset, then choose Edit > Edit Original. The clip will be opened in PPro 2, and you can change it as desired, then re-export it.
    Return to Encore after re-export has concluded and your asset will be updated.
    Note you may still have to update your poster frames in Encore if the duration of the asset used changed.
    -Joe

  • How to attach transmissi​on of two CAN cyclic frames?

    Hi all,
    I work with:
    Hardware: NI-PCI 8512, CAN interface.
    Software Environment: C++
    OS: Windows7
    I try to transmit two separate cyclic frames, with gap of up to 125 usec between one other.
    I try the approach of sending the nxStart command line after line - and i got a gap of 600 usec. Not good enough...
    Any ideas?
    Thanks for advance,
    Aviad

    Just to clarify..
    You want to send Cyclic Frame (ID = 1) every 100ms
    "Immediately" after sending the ID = 1 frame, you want to send ID=2 frame
    In theory, I think you could do this. NI-XNET should send the frames in priority order if there is a "collision", meaning that the two frames are attempted to transmit at the same time.
    You could try:
    Create Cyclic Frame ID = 0x1, set Cyclic rate to 100ms
    Create Cyclic Frame ID = 0x2, set Cyclic rate to 100ms
    Create Signal for Cyclic Frame 2
    Create session to Id = 0x1 (FrameOutSinglePoint)
    Set nxPropSessionSub_CANStartTimeOff for the session to some number (>= 1)
    Create session to Id = 0x2 (SignalOutSinglePoint)
    Set nxPropSessionSub_CANStartTimeOff for the session to the same number
    Start session 1 (use session only)
    Start session 2 (normal)
    I think this should work to accomplish what you want.. however...
    You cannot really have any guarantees on the CAN bus due to collisions (if your IDs are exactly 1 and 2 you are pretty safe since those are two of the highest priority frames, but in the normal world those are not typically the two frames that are generated). I think it would be better to do everything the same as above, but set the Set nxPropSessionSub_CANStartTimeOff for the second session to be N+1 (N is the number for the first session). The second frame should transmit 500us after the first one in this case. The advantage of this is that you are not relying on any detected collision in the driver (there is an ever so slight chance that they could be sent in the opposite order). You would see 500us instead of 125us (although you wouldn't actually see 125us in the first situation as the two frames would be sent back-to-back every 100ms).
    Is the 125us required? Do you know the data to transmit ahead of time? You could use stream output in replay mode to get precise timing, but that somewhat requries you to know exactly what you want to send ahead of time.

  • Can´t figure out if QuickTime 7 PRO can animate frame-by frame

    Can´t figure out if QuickTime 7 PRO can do what I want ??!
    I have been told that QT can animate from picture sequenses,(frame by frame from 3D renderings in my case), but i can´t find any word about that att QT-webpages??
    I have several maps containing frame-sequences of all from 20-30 frames, to sequences of 500-1000 frames. they are all named differently, but also numbered from 000-xxx in each map.
    My wish is to make continuous film-sequenses, and thereafter edit them as in ordinary video-edit-applications, and allso add some soundtracks to it all,
    - sounds really basic doesn´t it?
    IS THIS SOMETHING I REALLY CAN DO IN QT PRO 7 ??!!
    GRATEFUL FOR ALL HINTS!
    PII, 1024RAM, 256 MB Gr.card-ddr3   Windows XP  

    http://docs.info.apple.com/article.html?path=QuickTime%20Player/7.0/en/c2qt11.ht ml
    Use at least one second per frame to get best quality. To speed up the motion you can add the video track "scaled" to a properly timed audio track and then "extract" the new video track.

  • How can I frame my photos in the new PSE11

    While I knew how to add a frame to my photos in the previous version on PSE, I can't seem to figurre out how to do so in the latest version.  Could someone point me in the right direction, please. 

    In Elements 11 Content panel is changed with Graphics panel.
    If you are in Expert mode (for single image)
    Click on the Graphics icon next to layers on task bar or go to window menu >> graphics
    If you are in creation mode
    Switch to advance mode
    Open the graphics panel and add a new frame.

  • Live cycle ES2 can covert Frame maker file into PDF??

    Hi All
    good day!!
    I have read that live cycle can covert farme maker files into pdf .
    is it true . we are using live cycle ES2 and we are going to upgrade FM 8 (unix) to FM 11 .
    can we convert frame maker files into pdf using Live cycle ES2????
    you response highly appiciate!!
    thank you
    ramesh babu

    Possibly, but ES2 is only specified to convert FM7.2 & FM8 files. FM11 might work, but you would have to test it and it's most likely not supported by Adobe in this mode. See: http://www.adobe.com/products/livecycle/pdfgenerator/formats.html
    If you only need to create PDF output from existing FM files, then Datazone's DZbatcher or Omni Systems fmbatch (part of the mif2go product) utilities may suffice.

  • How i can transmitt audio in LAN through the use of Java JMF

    can anynone help me to give the code for audio transmission in LAN through the use of JMF classes

    If you need help with JMF, there's a forum specificlly for JMF. Go ask your JMF question there...

  • How to un merge movie so I can edit frames

    hi
    i have made a movie in iMovie  using individual photos and  recorded clips. I Played it in theatre and now the individual clips have merged and cannot be edited in time line.
    how can i separate the film so i can edit it.

    how can i separate the film so i can edit it.…
    You can't.
    But is the Project not anymore in your iMovie Library?

  • Can we frame a VO which is a combination of EO based VO and SQL based VO?

    Is it possible to create a VO which is a combination of EO based VO and SQL based VO? Is the resultant VO capable of inserting data in the database?

    Fortunately, this is such a common use case that it's documented how to do this:
    http://docs.oracle.com/cd/E26098_01/web.1112/e16182/bcquerying.htm#CEGEGHFB
    and
    http://docs.oracle.com/cd/E26098_01/web.1112/e16182/bcquerying.htm#CHDHBDDE
    are the two sections you need to read.
    You don't need a "combination" VO, and in both cases, the base EO of the VO is updatable/insertable
    Note: This is why the best course is to state your use case (problem) - not failed or attempted solutions - when posting questions on OTN.

  • RTSI pulse using a CAN frame

    Hi,
    I'm currently using the ncWriteMult function (we can't use the ncWrite
    function because our application simulates problems of transmission on
    the CAN i.e. stopping an exact amount a frames or sending frames with
    the wrong DLC => we need a good accuracy so we can't use for example
    ncAction(NC_OP_ START / NC_OP_ STOP) to stop N frames and then restart
    => our application fills a buffer with timestamped frames and send
    them with ncWriteMult).
    The application has to synchronize those actions with DAQ so we want to
    use RTSI. We want, for example, stop 50 0x203ID-frames, restart them
    and 100ms after send a RTSI pulse for DAQ synchronisation (to toggle an
    analog signal, that DAQ part works).
    As the application fills the buffer passed to ncWriteMult with
    timestamped frames, we 'd like to put special virtual CAN timestamped
    frame in that buffer that would only output a RTSI pulse.
    Is it possible to do that ? I tried to use the the NC_FRMTYPE_RTSI but
    this type seems to be only used to store RTSI events received by the
    CAN card in the read queue doesn't it ?
    Thanks for your replies.
    Best Regards.

    Hi JCX
    Well if i understand your request, you need to output a RTSI Pulse 100 ms after you sent 50 Frames using the Write mult net function?
    The easiest way to do so, would be using the Confog Net with RTSI to configure the RTSI output on call of nc action. Thus you will have a single RTSI Pulse on every call of nc action and you can configure this output 100 ms after your write mult  has written the last frame, controlled by using a wait for write success.
    See the attached example, for details.
    I noticed one problem with this solution: The open Function  initializes a start trigger pulse on the specified RTSI Line, thus you will see one RTSI Pulse on call of ncopen, before you enter the While loop to call the write mult. We are working on this to fix it for the next driver.
    DirkW
    Attachments:
    CAN Transmit multiple_Output_RTSI.vi ‏104 KB

  • CAN loopback using RTSI programming

    Hi,
    I have 2 port CAN card from NI which can be programmed with RTSI extension. In my application, the first thing i need to do is a loopback test of the 2 ports.
    - 2 messages with different arb id's have to be sent on the port configured as TX.
    - The transmission of one message should activate the transmission of other message on the same port with the help of RTSI lines. ( RTSI 1 would be looped back with RTSI 3).
    - These messages transmitted onb TX port should be captured on the RX port.
    I tried to work on this but could not get the results. Can somebody help me in this regard??
    Regards,
    Siddu
    LabView 7.0, 6.1

    Hi Siddu,
    There are two restrictions that apply to cases like this that can make
    it pretty ‘tricky’ if the transmission needs to happen on the same CAN
    port:
    1. You can’t configure two CAN Objects with the same arbitration ID for the same port (doesn’t matter for your use case).
    2. When you configure the Network Interface to ‘Transmit a CAN Frame on
    RTSI Input’, (any) frames will only be transmit when there is a RTSI
    pulse.
    That obviously leaves CAN Objects for the transmission. For the
    receiving side however, there are only very (very) few cases where it
    is useful to use CAN Objects instead of the Network Interface.
    However, I’m not 100% sure, if I understand your need to (hardware)
    trigger the second frame. Assuming that you don’t generate any other
    CAN traffic, when you write both frames with ncWriteNet.vi (or
    ncWriteObj.vi) into the output buffer of the CAN card, the card will
    transmit the second frame as soon as it successfully transmitted the
    first frame. Thus, why the need for the RTSI trigger pulse?
    BTW: The ncWrite VIs complete when LabVIEW passed the data to write to
    the CAN card – NOT when the card successfully transmitted the frames.
    If you call ncClose right after calling ncWrite, the ncClose might stop
    the CAN card before the remaining frame(s) are written to the bus.
    Therefore, it’s always a good idea to use ncWaitForState
    (Write_Success, 0x2) before closing handles. This could be the reason
    why your VI only works when ‘highlight execution’ is turned on (as
    there is enough time between the ncWrite and the ncClose calls).
    Your VI (NI CAN Loopback Test RTSI.vi) also generates an error, but as
    the error cluster is not wired through, one doesn't see it right away:
    1. ncConfig ("CAN1", 8, {0x80000006,0x80000007,...}, {0x00000001,0x0007A120,...})
    Status: 0 (VI_SUCCESS)
    2. ncConfig ("CAN0", 8, {0x80000006,0x80000007,...}, {0x00000001,0x0007A120,...})
    Status: 0 (VI_SUCCESS)
    3. ncConfig ("CAN0:TD5", 12, {0x8000000F,0x80000013,...}, {0x000003E8,0x00000000,...})
    Status: 0 (VI_SUCCESS)
    4.  ncOpenObject ("CAN0:TD5", 41419424)
    Status: 0 (VI_SUCCESS)
    5.  ncWrite (41419424, 8, "........")
    Status: 0 (VI_SUCCESS)
    6.  ncCloseObject (41419424)
    Status: 0 (VI_SUCCESS)
    7.  ncConfig ("CAN1:TD5", 7, {0x8000000F,0x80000013,...}, {0x00002710,0x0000000A,...})
    Status: 0 (VI_SUCCESS)
    8.  ncConfig ("CAN0:TD5", 12, {0x8000000F,0x80000013,...}, {0x000003E8,0x00000000,...})
    Status: 0 (VI_SUCCESS)
    9.  ncOpenObject ("CAN1:TD5", 41419424)
    Status: 0 (VI_SUCCESS)
    > 10.  ncOpenObject ("CAN0:TD5", 0)
    > Status: 0xBFF6211D
    > 11.  ncWaitForState (41419424, 17, 20000, 18)
    > Status: 0xBFF62021
    12.  ncCloseObject (41419424)
    Status: 0 (VI_SUCCESS)
    > 13.  ncCloseObject (0)
    > Status: 0xBFF62024
    The problem here is, that the second ncOpenObject (for CAN0:TD5)
    fails (error code: 0xBFF6211D). The reason for that is that when the
    port (CAN0) was never opened directly, closing the only CAN Object on
    that port (fucntion call #6) will stop the port and reset its
    configuration. Thus when you try to open an object again, the above
    error occurs.
    -B2k

Maybe you are looking for

  • Why does my font get distored more so when I'm at G+, a month ago I had remove FF as my main browser and use chrome because it was so bad everywhere I went?

    Now, that I have loaded it back up as my main browser it still does the same thing when I'm at G+ and my gmail account but, not yet with my yuku account which FF is highly recommended their. The worst was when it was happening in my FF tool bar but,

  • Materialize view on oracle 9i and oracle 10g

    Hi, My sql query using Materialized view in from cluase. its execution time on oralce 9i 9.0.2 is only 0.25 sec but on oracle 10g it takes 4 minutes. Explain plan in oracle 9i it consider MV as table but in Oracle 10g it consider it as MV. i m analyz

  • Portal down...upgrading from 5.0.1 to 5.0.2

    I upgraded the server from 5.0.1. to 5.0.2. And it went down. I noticed that none of the assemblies have changed (have the modified date of 5.0.1 installation). PTSPY info -- 231 04-21 11:49:41 Info UI Infrastructure 1860 2688 com.plumtree.uiinfrastr

  • Equal Key Won't Work

    For some strange reason the Equal key on my MacBook Pro Core 2 Duo won't work. I did go to the control panel to reset the keyboard shortcuts. I can use the option key to get ≠. I just can't get a normal equal sign... Ideas?

  • Editing/Adding geotags within new Photos app?

    Does anybody know of a way to edit or add the geotags of photos inside the Photos App? This used to be possible with iPhoto. I have found plenty of third party apps which can edit geotags, but they all require removing the photo from Photos App, then