81 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from pypot.feetech import FeetechSTS3215IO
 | |
| import time
 | |
| import pickle
 | |
| 
 | |
| io = FeetechSTS3215IO(
 | |
|     "/dev/ttyACM0",
 | |
|     baudrate=1000000,
 | |
|     use_sync_read=True,
 | |
| )
 | |
| 
 | |
| id = 24
 | |
| max_acceleration = 254
 | |
| io.set_D_coefficient({id: 0})
 | |
| io.set_acceleration({id: max_acceleration})
 | |
| 
 | |
| io.set_goal_position({id: 0})
 | |
| 
 | |
| # present position
 | |
| # goal position
 | |
| # present load
 | |
| # present current
 | |
| # present speed
 | |
| # 0 deg pendant 2s, 90° pendant 2s etc
 | |
| 
 | |
| 
 | |
| present_positions = []
 | |
| goal_positions = []
 | |
| present_loads = []
 | |
| present_currents = []
 | |
| present_speeds = []
 | |
| times = []
 | |
| 
 | |
| input("press enter to start")
 | |
| 
 | |
| io.set_goal_position({id: 90})
 | |
| s = time.time()
 | |
| while time.time() - s < 2:
 | |
|     present_positions.append(io.get_present_position([id])[0])
 | |
|     goal_positions.append(io.get_goal_position([id])[0])
 | |
|     present_loads.append(io.get_present_load([id])[0])
 | |
|     present_currents.append(io.get_present_current([id])[0])
 | |
|     present_speeds.append(io.get_present_speed([id])[0])
 | |
|     times.append(time.time())
 | |
| 
 | |
| 
 | |
| io.set_goal_position({id: 0})
 | |
| s = time.time()
 | |
| while time.time() - s < 2:
 | |
|     present_positions.append(io.get_present_position([id])[0])
 | |
|     goal_positions.append(io.get_goal_position([id])[0])
 | |
|     present_loads.append(io.get_present_load([id])[0])
 | |
|     present_currents.append(io.get_present_current([id])[0])
 | |
|     present_speeds.append(io.get_present_speed([id])[0])
 | |
|     times.append(time.time())
 | |
| 
 | |
| io.set_goal_position({id: 90})
 | |
| s = time.time()
 | |
| while time.time() - s < 2:
 | |
|     present_positions.append(io.get_present_position([id])[0])
 | |
|     goal_positions.append(io.get_goal_position([id])[0])
 | |
|     present_loads.append(io.get_present_load([id])[0])
 | |
|     present_currents.append(io.get_present_current([id])[0])
 | |
|     present_speeds.append(io.get_present_speed([id])[0])
 | |
|     times.append(time.time())
 | |
| 
 | |
| 
 | |
| data = {
 | |
|     "present_positions": present_positions,
 | |
|     "goal_positions": goal_positions,
 | |
|     "present_loads": present_loads,
 | |
|     "present_currents": present_currents,
 | |
|     "present_speeds": present_speeds,
 | |
|     "times": times,
 | |
| }
 | |
| 
 | |
| pickle.dump(data, open(f"data_max_acc_{max_acceleration}.pkl", "wb"))
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 |