写字机器人——简易版demo全流程实现
基本思路:turtle画图——机械臂绘制
需要包含模块:1、turtle绘图并记录坐标2、坐标转换为机械臂角度3、机械臂角度转为舵机的pwm值4、将pwm值传入pca9685控制芯片,并执行
硬件部分:需要3个舵机,分别为大臂、小臂、以及控制抬笔落笔(简称“抬落臂”,谐音“抬落笔”。。。)核心计算:1、坐标转为机械臂角度2、角度转为pwm值(难)
(1)坐标转化为大、小臂的角度classAngle():def__init__(self,position):#大臂与x正轴的夹角为alpha,小臂与大臂夹角为beta,根据终点坐标position,计算出夹角alpha和betaself.x,self.y=position#大臂臂长OB,小臂BAself.OB=50self.BA=50self.OA=(self.x**2+self.y**2)**0.5#机械臂默认只能向上绘画,且距离不应该超过大臂+小臂的长度之和assertself.y>=0andself.OA=0andself.OA