Hello Tello Pilot!
Join our DJI Tello community & remove this banner.
Sign up

Movements

Sembot

Member
Joined
Jan 20, 2021
Messages
7
Reaction score
1
Age
68
Location
Belgium
hi ,

I would like to know how you can program several movements one after the other without the movement stopping, in Pycharm
So how do you program a smooth movement , takeoff 3 meters as soon as the tello is at 3 meters go forward and simultaneously to the right with Yaw command and then fly on and at the same time to the left with yaw command , like a snake movement
In the examples you see that the tello stops after every movement
Can anyone help me, thanks in advance

Erwin
 

Hacky

Well-known member
Joined
Jul 19, 2021
Messages
255
Reaction score
105
Location
Germany
This kind of continous movement can only be achieved using a sequence of "rc" commands through the API. In order to minimize the movement error (distance betwee actual position and target position) you need some kind of PID controller.

I implemented this in an example for a Tello formation following Lissajous figures :
 

Sembot

Member
Joined
Jan 20, 2021
Messages
7
Reaction score
1
Age
68
Location
Belgium
Hi ,

Have experimented, see prog below, and I notice the drone does the movement smoothly
Take off and immediately start turning forward and right in one movement followed by backward and left, so back to the starting point (which is my intention)
Note that the speed is slow, I want to increase it??? how do I do that
I expected with the time.sleep that the drone would wait but it apparently steps over it (which I do want), is there an explanation about this???

Just an explanation: my intention is to complete a zigzag path autonomously, so fly 5 cones at a distance of 3 meters in the shortest possible time, none and back

Start / Finish 3m 1 cone 3m 2 cone 3m 3 cone 3m 4 cone 3m 5 cone

Between ( ) when starting pycharm and connecting the tello on wifi no problem, but I experience that if you go back on the internet and then you want to connect the tello to wifi again this gives problems, I have to close the program and restart it program starts, if I don't do this I can't get internet, open
Does anyone know what to do with that???

from djitellopy import tello
import time
dr1 = tello.Tello()
dr1.connect()
print(dr1.get_battery())

dr1.start()
time.sleep(5)
dr1.send_rc_control(0, 30, 0.50)
time.sleep(5)
dr1.send_rc_control(0, -30, 0, -50)
time.sleep(5)
dr1.land()
 
Last edited:

Hacky

Well-known member
Joined
Jul 19, 2021
Messages
255
Reaction score
105
Location
Germany
You should do some further reading and investigation about the rc command first. It should be sent continously in a loop with a little delay inbetween. The drone moves according to the speed vector given by that command for certain time or until it receives a new rc command (which does not get acknowledged like the other API commands). If it does not receive a rc command for some time (may be 5 seconds or so), it automatically stops (preventing problems when control software hangs or sender is disconnected or whatever).
 

Sembot

Member
Joined
Jan 20, 2021
Messages
7
Reaction score
1
Age
68
Location
Belgium
Who can help me with more tips or examples that I can possibly use ,thanks in advance
 

New Threads

Members online

No members online now.

Forum statistics

Threads
5,443
Messages
38,856
Members
15,444
Latest member
dikmie2