http://www.zhaoqingshengjiangchechuzu.com/ 电机建模要使云梯车运动,则要给模型一个动力,这个动力由虚拟电机Motor节点提供      肇庆云梯车出租
来源: admin   发布时间: 2018-01-19   1086 次浏览   大小:  16px  14px  12px
肇庆云梯车出租, 肇庆出租云梯车, 肇庆云梯车公司

     电机建模要使云梯车运动,则要给模型一个动力,这个动力由虚拟电机Motor节点提供    肇庆云梯车出租,  肇庆出租云梯车,  肇庆云梯车公司    电机分为旋转电机和线性电机,旋转电机为铰链关节节点提供电力产生沿轴线的旋转运动,线性电机则为滑块关节节点供电做滑动运动。由电机的工作方式可知,对电机操作标准方法是直接进行位置控制。用户利用功能函数wb_motor_set_position指定一个目标位置,将P-controller作为电机马达移动到目标位置所需的速度、加速度和动力。从而将电机位置控制分为三个阶段进行。


      第一阶段有用户指定的控制器(1)来执行,而该控制器决定了电机必须使用哪个位置、速度、加速度和马达。第二阶段由计算电机当前速度VC的电机P-controller(2)执行。最后,第三阶段由物理模拟器(ODE关节电机)执行。P控制器的算法如下:其中,是当前的电机速度,单位或,、和是PID_control控制器中指定的controlPID增益,是目标位置,是当前电机位置,是期望速度,a是一个时间步长中达到所需的加速度,是上一时间步长的电机速度,是指定模拟时间步长的持续时间,是由加速度域acceleration设置的电机加速度。



     主要感知设备建模,  主要的感知设备包括各种传感器器件、相机、陀螺仪、测距仪、雷达和显示屏等,对工作场景对象进行边界对象设置,利用距离传感器感知吊装过程中的物体,结合测距仪、激光传感器等Motornode(VRML)来避免吊臂吊装过程中发生碰撞。同时还可以根据位置传感器和雷达信息观测吊臂的位置信息。将相机获取的图片信息及时反馈给吊装操作人员,使吊装人员了解吊装工作环境,有助于吊装工作安全展开。



    激光传感器的建模,   在仿真世界中光源是必不可少,如果没有光源,世界模型将一片黑暗。当不通过创建DirectionalLight节点给世界提供直接光源时,需通过激光传感器来模拟光照幅度。利用colorFilter节点来根据颜色选择检测光源,而标量幅度值E的计算就是用总的RGB辐照度乘以该滤波器,然后将获得的标量值作为查找表的输入值。其中,矢量是对应传感器colorFilter的字段;是灯的模拟总数;对应于个光的导通场(TRUR=1,FALSE=0);为光的色场;光的强度场;是光的衰减(方向光没有衰减);变量、、为光的衰减场,是光与传感器之间的距离;是光直接贡献的辐照度;是光源DirectionalLight对应光的强度场;矢量是传感器到光源的矢量,是传感器的法向轴(X轴)在DirectionalLight光源的情况下,对应于光的方向场为负;*操作是一个修改点积,如果则为0,否则为积。利用激光传感器的特征,建立PointLight光节点给世界提供光源。 如果光源被一个或多个障碍物隐藏,则“遮挡”条件为真。同时,DirectionalLight节点没有位置字段;在这种情况下,Webots会检查传感器与位于距该方向光线方向指示的方向相反方向1000m处的虚拟点之间的障碍物。值得一提的是,PointLights和SpotLights的衰减域的默认值为。这些值对应于VRML默认值,不适用于对实际灯光的衰减进行建模。如果点或点光均匀地在所有方向辐射,并且没有吸收,则辐照度与距离物体的距离的平方成正比地下降。因此,为了实际建模,光源的衰减场应改为[004π]。



  肇庆云梯车出租,  肇庆出租云梯车,  肇庆云梯车公司 www.zhaoqingshengjiangchechuzu.com/



    其他传感器建模,  对于距离传感器,传感器的光线分布在3d锥形内,开口角度可以通过aperture(孔径)来调节。是从一到十的光线分布图,图中光线的分布应尽可能均匀且左右具有对称性。虽然光线数量没有上限,然而Webots的性能会随着光线数量的增加而下降。  传感器1到10条射线的分布图光源Phi=0°E=100%Phi=90°E=0%N90°LPhi=60°E=50%60°NLNL未添加光源的世界激光传感器节点激光传感器模型1234567891028得到每个传感器射线的单个权重可用高斯分布来计算如下式:3-9其中是第条射线的权重,是第条射线与传感器轴线之间的角度;是传感器孔径角;是高斯宽度,是光线数量。射线数与射线权重的关系图。传感器锥体中心的光线比周边光线的权重更大,同时通过调整gaussianWidth字段可以调整分布。当gaussianWidth足够大,则获得近似平坦的分布。对于传感器的建模,通过添加传感器的节点,并在传感器的子节点中设置传感器的外观纹理、几何形状,一般将传感器的形状设置为圆柱体。同理,不管是相机、测距仪还是雷达等,它们与传感器节点是并行的节点,都是通过直接添加对象节点后在children子节点中进行对象外观、形状、大小设置。然后将这些元器件安装到云梯车模型中。为了更好的观察云梯车的吊装过程,本次的仿真实验中,为了更好的观察吊装过程,将会在云梯车的车头以及吊臂的顶端安装两个相机(camera0和camera1),通过camera0可以观察吊臂的移动过程,而通过camera1的视觉窗口不仅能够有利吊装操作人员准确判断吊装物的位置,同时还能够更好的保证吊装物与吊绳、障碍物之间的安全。激光测距雷达则会安装在操作室上,用于检测吊臂、吊装物、障碍物等的位置及碰撞信息。



     吊装仿真测试,  经过上面的建模,将世界、汽车云梯车、动力元件、感知设备组合完成,结合前面给定站位点云梯车区域构建原理,验证云梯车吊装的可行性。在Webots中通过编写控制代码来实行云梯车的运动控制。所以首先必须要完成的是控制程序的编写。云梯车的运动主要有车轮的旋转运动和吊臂滑动运动,因此运动的控制程序编写主要是对hingejoint、sliderjoint节点的参数进行赋值,首先在项目文件中新建一个控制器文件,并选定所使用的语言,在控制程序头文件中将所用到的函数进行宏定义,并让各个驱动的名称“name”与汽车云梯车模型相匹配。图3-16组合完成的整个仿真吊装场景俯视图在主函数中调用wb_robot_init函数来进行初始化控制程序,控制程序通过对函数wb_robot_get_device和在汽车云梯车模型对应设备中的“name”属性读取该设备,通Wb_motor_set_position函数对设备的运动轨迹进行控制,通过wb_motor_set_velocity函数可以对设备速度进行设置,利用函数调用完成云梯车自动控制。获取所需吊装位置信息参数,并通过计算吊装过程各机构的运动过程、移动位置信息,结合吊装运动位置信息预警值,逐个解析吊装过程动作,逐一完成整个吊装过程。汽车云梯车仿真控制程序流程图。仿真中云梯车利用电机提供的输出转矩(每一步都需要根据车轮转速并按照虚拟发动机的输出转矩公式重新计算输出转矩),然后将输出转矩乘以节流阀和齿轮箱的状态系数得到扭矩分布(遵循微分约束),进而驱动云梯车车轮运动。虚拟电机的输出转矩公式:3-5其中a、b和c是汽车云梯车电机的值函数系数,rpm为转速,out_torque是输入的转矩。对于转速rpm有如下式的限制要求。3-6其中,minRPM最小转速值,maxRPM是最大转速值。完成的控制程序进行调试编译后,我们可以通过终端输出了解仿真运行状态。设备正常运行后,可以看到相机也开始工作,并捕获的图片。因此,测试表明建立的吊装场景模型能够真确的初始化并正常工作。通过捕获的图片,就能实时的观测到吊装周围的环境信息。对于实际吊装中单纯依靠人工判断及吊装辅助人员的信息传递,通过视觉视场图,吊装操作人员能够能更快更直观的做出下一步的操作。增强的吊装的安全性,节约了吊装成本。



     



   肇庆云梯车出租,  肇庆出租云梯车,  肇庆云梯车公司