|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||||
|
|||||
|
Black Jaguar CAN Message Identifier Help
Hello all
At work I've purchased a Black Jaguar to use for a non-FIRST application. It will control a motor running a small pump, and I need to control the speed of the motor to regulate pump flow output. This is an open loop application, so no feedback from any sensors. I'm using a Parker IQAN module as my system controller, so the plan was to generate a message within IQAN and send it to the Jaguar. I was hoping that I'd be able to look through all the documentation and figure out how to format that message, but I'm having trouble doing so. So far I've been able to determine this: It's a 32 bit message divided into 5 fields. Bits 31-29 are RSVD, 28-24 are Device Type, 23-16 are Manufacturer, 15-6 are API, and 5-0 are Device Number. I'm trying to figure out what values each field needs so that I can send messages to set the speed. These details seem to be hidden away in the various library files that FIRST provides, or at least sufficiently hidden so that I can't find them. Can anybody point me in the right direction? |
|
#2
|
|||
|
|||
|
Re: Black Jaguar CAN Message Identifier Help
Here is a link to the CD that comes with the Jaguar (BDC24) reference design kit: http://www.ti.com/tool/rdk-bdc24-cd.
You'll have to create a free My TI account to download it (annoying... but it has to do with software export compliance). Once you do, you'll find a a file on the CD called "SW-RDK-BDC24-UG-xxxx.pdf" (the xxxx is the release version). That document will describe the CAN API for Jaguar. You will also find a self extracting zip file "SW-RDK-BDC24-xxxx.exe" that will unzip the source code for Jaguar on your system. It might be helpful to see the Jaguar source code to see how things work in the Jaguar. It also might help to look at the BDC-COMM source too. It is communicating over serial to the Black Jaguar, but the API calls are the same. Hope this helps! -David |
|
#3
|
|||||
|
|||||
|
Re: Black Jaguar CAN Message Identifier Help
Thanks David this helps a lot. As a quick example, if I want to send the Jag a series of CAN messages to run at a certain voltage I'm assuming I'll do the following:
1. Enable Voltage Mode by sending an "empty" message with the identifier 0x2020001. 2. Send a Voltage Set message with the identifier of 0x2020081 and 3 bytes of data. The first 16-bits will specify the setpoint and the next 8 will be 0 since I have no sync group. Then, if I want the Jag to report back as to what it's voltage output is, I would: 3. Send an "empty" Status Output Voltage message with identifier 0x2021681. 4. When the motor gets this message, it will create a message of it's own and send it back along with 2 bytes of data. The response message will have the same identifier as the request, 0x2021681, and the first 8 bits of data will be the whole number and the next 8 bits will be the fractional part of the voltage. As for the identifier format, I'm assuming the following: Device type will always be motor controller, so Byte 3 will always mask to 0x02000000. Mfg will always be TI, so Byte 2 will always mask to 0x00020000. API will vary based on the message type. I haven't adjusted the default Device Number for my Jag, so the last 5 bits of every message will be 000001. Does this all sound correct? |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|