Send_ned_velocity in ArduCopter 4.6 SITL

In my code only
send_ned_velocity(1,0,0)
send_ned_velocity(0,0,1)
send_ned_velocity(1,0,-1)
and yaw are working correctly.
But -Vx and roll commands are not working correctly.
its showing circular movement at a point or say -Vx with yawing.

Code:
from dronekit import connect, VehicleMode
from pymavlink import mavutil

def send_local_ned_velocity(x, y, z):
msg = vehicle.message_factory.set_position_target_local_ned_encode(
0, 0, 0,
mavutil.mavlink.MAV_FRAME_BODY_OFFSET_NED,
0b0000111111000111,
0, 0, 0,
x, y, z,
0, 0, 0,
0, 0)
vehicle.send_mavlink(msg)
#vehicle.flush()

def condition_yaw(heading):
msg = vehicle.message_factory.command_long_encode(
0, 0, # target_system, target_component
mavutil.mavlink.MAV_CMD_CONDITION_YAW, #command
0, #confirmation
1, # param 1, yaw in degrees
0, # param 2, yaw speed deg/s
heading, # param 3, direction -1 ccw, 1 cw
1, # param 4, relative offset 1, absolute angle 0
0, 0, 0) # param 5 ~ 7 not used
# send command to vehicle
vehicle.send_mavlink(msg)
vehicle.flush()

vehicle = connect(‘udp:127.0.0.1:14550’, wait_ready=True)

while True:
send_local_ned_velocity(-1, 0, 0)
#condition_yaw(-1)