再聊机器人设计:如何加速开发流程?
扫描二维码
随时随地手机看文章
01
一套机械臂系统引发的思考
此种复杂的机械臂控制系统到底如何开发,如何设计?
02
与机器人相关的系统开发流程
比如:我们在设计机器人机械臂时,机械臂驱动电路已经设计并制作完成,但小伙伴的机械臂结构还未搭建好,我们必须得等小伙伴完成机械臂结构后才能测试。无形中,也浪费了开发时长。
那么,如何提升效率、减少时间和资金,从而加快开发流程呢?
加快反馈!
在早期进行整体设计时,如果可以仿真,在仿真过程中,不断调试装置和系统参数,多次反馈后得出我们想要的模型,同时进行结构与软硬件制作,并根据仿真模型的变动进行修改,多阶段同时进行,以此来减少开发时长以及资金成本。
当然,既然要进行仿真,要选取哪款软件呢。
在这之前,我们曾经有写过一篇:
MATLAB R2020a新鲜出炉,我来替各位尝尝鲜!(超链接,点击即可阅读)
在这篇文章中,我们有聊过利用MATLAB/Simulink对机器人运动规划进行仿真。
那么在加速机器人开发流程上,MATLAB又会给我们带来什么惊喜呢?
03
MATLAB如何加速机器人开发
在未设计出机械臂硬件系统之前,我们是无法验证算法,其抓取效果以及准确度,此时MATLAB即可上场,担当搭建相关模型,提前完成仿真测试的重任。
在开篇的腰间机械臂视频中,机械臂有给人递送工具的应用场景,我们以机械臂抓取物品为例,使用MATLAB模拟仿真该运动过程。
在MATLAB中,有较多的机械臂模型供大家选择,可供自己的设计需求选择相应的机械臂模型,接下来使用MATLAB对进行机械臂拾放工作流程仿真。
首先,使用Stateflow图表创建状态流程图,由以下三个步骤组成:
1、初始化机器人和环境
初始化机械臂模型,并创建其运行环境,初始化相关参数配置,建立机械臂模型。
该环境由机械手、用于分类的架子和蓝色障碍物组成。
2、识别零件并确定放置位置
在识别阶段的第一步中,必须检测零件。我们可以直接调用相关函数直接给出待拾放的物体检测算法,也可以通过我们特定的物体,来设计对应的物体检测算法。
接下来,调用相关函数将零件分为两种类型,以确定放置它们的位置(顶部或底部架子)。
3、执行取放工作流程
一旦识别出物品,并指定了它们的目的地,手爪将其拾取,然后移动到目标位置。
*详细流程如下图所示:
在完成状态流程图后,就可以运行可视化仿真。
通过确定选用MATLAB中提供的机器人模型,初始相关参数配置,完成机械手的初始配置,建立机械臂模型。
【案例来自MATLAB官网,该仿真使用带有手爪的KINOVA GEN3机械臂模型】
代码:
调用函数,即可将可视化模型连接到前文状态流程图,
coordinator.FlowChart = exampleHelperFlowChartPickPlace('coordinator',coordinator);
输入下方代码,可进行拾放物体过程仿真:
answer = questdlg('Do you want to start the pick-and-place job now?', ...
'Start job','Yes','No', 'No');
switch answer
case 'Yes'
% Trigger event to start Pick and Place in the Stateflow Chart
coordinator.FlowChart.startPickPlace;
case 'No'
% End Pick and Place
coordinator.FlowChart.endPickPlace;
delete(coordinator.FlowChart);
04
总结
本文只是浅谈了机器人系统开发中,通过MATLAB/Simulink的配合使用,我们可以提前验证机械臂控制算法,同样的,除开机器人的机械臂模型仿真,我们也可以利用Simulink对机器人的移动控制、视觉等组件进行仿真,提前验证我们的控制算法,无需等到相关硬件制作完成后再验证,可以加快整个机器人系统的开发过程,提升效率。
总的来说,在机器人开发上,MATLAB给技术人员提供了足够多且友好的开发工具,并且也涵盖了多个demo,供初学者快速入门。我们可以通过学习调用demo,快速搭建出我们的机器人各个组件系统,进行仿真测试,无论是机器视觉,或者机械臂相关软硬件,亦或是移动路径规划等。都可以在MATLAB中找到相应的工具包对其进行仿真测试。
与此同时,在基于MATLAB模型设计下,我们可以将机器人系统如此庞大陌生的系统划分成各个模块进行组件设计,利用Simulink对其组件进行仿真测试,使用基于模型设计去开发软件,我们可以尽早对一个阶段的工作产品进行验证,同时链接到后一阶段的设计。不仅仅是节省开发时间成本和资金成本,并且对于基于模型的设计来讲,图形化设计是天然的、固有的。
能让人较为明朗了解设计原理以及过程,方便工程师们交流以及后期维护。
了解更多机器人解决方案:(复制到浏览器打开)
https://ww2.mathworks.cn/solutions/robotics.html?s_eid=PEP_23450
你可以申请30天免费试用工具包:(复制到浏览器打开)
https://ww2.mathworks.cn/campaigns/products/trials.html?s_eid=PEP_23450
-END-
推荐阅读
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!