T825 uart commands

Thank you for the videos. Sorry, I think I misunderstood your initial problem, but it is clear now that the “Intentionally de-energized” error is still triggered. You can clear this by sending something like the “Halt and set position” or the “Energize” command at start-up. Please note that the “Halt and set position” command is a 32-bit write type, so it has the same structure as the “Set target position” command, but uses a different command byte.

Could you try sending one of those two commands at the beginning and seeing if that helps?

Brandon

Hi Brandon.

First and again, thank you for your help.

I did 4 functions with 50 or 100 steps each:
2 functions include energize at start.

function number-1 with 50 steps include energize at start.
85
EC 00 32 00 00 00

function number-2 with 100 steps include energize at start.
85
EC 00 6400 00 00

the next 2 are the same but without energize (0x85) at start.

Nothing happen … the actuator isn’t moving.
I dont see any error on the pololu screen.

On the pololu screen, there is the section:: Operation.
The target is always 0.
Is there a command that i can control the target value ?

The only functions that i’m useing are (i show you at the start of conversation):

0x85 (energize)
do delay(50m)
0x97,0x01 (forward )

will move the motor CW.

0x85 (energize)
do delay(50m)
0x97,0x00 (reverse)

will move the motor CCW

If the delay is big, the actuator will get more length…

I hope that I described ok.

THanks Brandon.

To clarify, none of the commands you listed in your last post change the target; I was suggesting to send the “Halt and set position” or “Energize” command at the start of the code, before sending the “Set target position” command. So these commands will energize the motor and clear the “intentionally de-energized” state, without moving the motor.

When the Tic starts up, it has no reference for the position of the motor. By sending the “Halt and set position” command, you tell the Tic to energize the motor and set the current position (not the target position) to the specified value. The “Energize” command will energize the motor, but not change the current position variable. The homing command tells the Tic to start it’s homing procedure, which runs separately of the target. You can find more details about these commands in the “Command reference” section of the Tic user’s guide, and the homing procedure is described in the “Homing” section.

Brandon

Hello Brandon.

I think there is a little progress but i have one problem.

I will show you the steps:

86 (de energize)
ec 01 30 04 00 00 (set to 1200 - can be any step) - halt and set pos
85 (energize)
ec 01 30 04 00 00 (set to 1200 - can be any step) - - halt and set pos

After that, i saw that i need to move the bar (as smark in the picture),
and than if i do this function:

ec 01 30 04 00 00 (set to 1200 - can be any step) - - halt and set pos

it works!!!
i put any step and the actuator move right or left according the step i wrote.

The problem is: if i will not move the bar (via the pololu software) , the command - halt and set pos,
will not work.

What am i missing?

I tried to write " SET TARGET POSITION"
e0 01 30 04 00 00 - instead of moving the bar and nothing happen.

one more thing: if i will close the POLOLU software (it will not be in background) it will not work :frowning:

I will continue testing…

Hope it will be solve.

Thanks Brandon

pololu1

You do not need to send any serial command for the slider to work in the Tic Control Center. You can just click the “Resume” button and move the slider.

I don’t really understand why you are sending the commands in the order you mentioned or what you expect them to do. As I mentioned in my previous post, the “Halt and set position” command will not move the motor; it just sets the “Current position” variable so the Tic has a reference. If you use “Halt and set position” to tell the Tic the current position is 1200, then use the “Set target position” command to give it a target of 1200 (like you described), nothing will happen, because it is already at the target position.

Can you try sending the following commands, in order?

Halt and set position with a position of 0: 0xEC, 0x00, 0x00, 0x00, 0x00, 0x00
Set target position to 1200: 0xE0, 0x01, 0x30, 0x04, 0x00, 0x00
Set target position to -1200: 0xE0, 0x0E, 0x50, 0x7B, 0x7F, 0x7F

Brandon

Hi Brandon.

Perfect!!!

It works great.

The problem was - the command that tells the actuator it actual position.
So i reset the actuator to 0 position and than i use always the 2 commands:
ec - tells the actuator it position.
e0 - tells the actuator to move to a new position.

After it stop moving, it current consumption goes to low and i do not need to send: de-energize.

Thanks again for your help and your patience .

Shai.

1 Like