Discussion:
CAN Transmitt frame on RTSI.
(too old to reply)
KaBooOoom
2007-11-07 09:10:07 UTC
Permalink
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!
DirkW
2007-11-07 16:40:07 UTC
Permalink
Hi,
The driver should be save to handle up to 1 KHz of RTSI pulses. However to get the frames out with 1 KHz puts a lot of work to the onboard processor.
If there is anything alse going on at the same port or a second port, lets say a burst of frames comes in on the second port, then it could happen that the firmware cannot handle the transmit fast enough and thus you will miss RTSI pulses.
When ever possible make sure to use a one port board and nothing else then this RTSI transmit task on your board. If that is not possible, try to reduce incoming traffic using the filter feature and try to avoid object usage on the other port.
Can you tell what happens on your CAN network, whenever the Warning occurs?
DirkW
KaBooOoom
2007-11-15 11:10:07 UTC
Permalink
Hi dirk !
Sorry it's me again, i tryed to watch the CAN traffic with CANAnalyser, and my conclusions are the following : when i get this warning, the frame is not send, the frame is stored in the buffer and send the next RTSI pulse... In my configuration, that's not acceptable ! So i don't know if you have other solutions ... but for me this problem is due to this damned CAN board ! Send a frame every 1 ms is not really much, and even with this configuartion, the board can not manage this !
 
 

Loading...