机器人视觉系统实验

机器人视觉系统实验

2023年6月22日发(作者:)

机械手运动仿真运动实验报告

学院:机械工程学院

专业班级:现代化设计1301

学生姓名:郑可航学 号:2

指导教师:荀一

日期: 2016年6月18日 一、 程序目标:

使得C点沿着CC’移动

图一

二、问题分析:

将CC’十等分,得出AB线的角度变化,如图二所示。

得出

当x=1,且x++,Θ1=90-2.09*x-y

y=0.0125*(x-1)*x/2→Θ1=90-(2.09*x-0.0125*(x-1)*x/2)

图二 三、关键程序:

L2的画法:

voidCDrawrobotDlg::drawrobotL2(float angle0, float angle, float x1,

float x2, int y)

{

pDC->MoveTo(200+x1*

cos((angle0+90)*Pi/180),350-x1*sin((angle0+90)*Pi/180));

pDC->LineTo(200+x1* cos((angle0+90)*Pi/180) + x2 * cos((angle+

angle0)*Pi/180)+5*sqrt(1/2)*y,350-x1*sin((angle0+90)*Pi/180) - x2 *

sin((angle+ angle0)*Pi/180)+5*sqrt(1/2)*y);

}

L1&L2的旋转:

UINT CDrawrobotDlg::MoveThread(void *param)

{

CDrawrobotDlg *pDlg = (CDrawrobotDlg*)param ;

if(!pDlg->m_bMove)

{

return 0 ;

}

for(int x =1 ; x < 11; x++)

{

pDlg->m_fAngle0 = pDlg-> m_fAngle0=

-2.09*x-0.13*(x-1)*(x-2)/2+0.0125*(x-3)*(x-2)/2;

pDlg->m_bx = pDlg-> m_bx+1;

pDlg->Invalidate(FALSE) ;

Sleep(pDlg->m_iTime) ;

}

}

启动与停止旋转:

voidCDrawrobotDlg::OnBUTTONStart()

{

if(m_bMove)

{

return ;

}

m_bMove = true ;

AfxBeginThread(MoveThread, this) ;

}

voidCDrawrobotDlg::OnBUTTONStop()

{

m_bMove = false ;

}

软件界面截图:

其他:程序已经达到运行目标,但轨迹没有记录,不能明显展示。

发布者:admin,转转请注明出处:http://www.yc00.com/news/1687428640a9330.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信