⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ctestdlg.cpp

📁 可以实现PC机与首钢MOTOMAN up6机器人的连接
💻 CPP
📖 第 1 页 / 共 3 页
字号:
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_lAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_lAxis=GetPulse[1];        
	  }
	  while(k!=m_lAxis);    //停止继续往下执行		 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnUaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis-m_pulse;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_uAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_uAxis=GetPulse[2];        
	  }
	  while(k!=m_uAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnRuaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis+m_pulse;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_uAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_uAxis=GetPulse[2];        
	  }
	  while(k!=m_uAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnRaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis-m_pulse;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_rAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_rAxis=GetPulse[3];        
	  }
	  while(k!=m_rAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnRraxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis+m_pulse;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_rAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_rAxis=GetPulse[3];        
	  }
	  while(k!=m_rAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnBaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis-m_pulse;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);

//判断机器人运动是否停止	
      do
	  { 
	     k=m_bAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_bAxis=GetPulse[4];        
	  }
	  while(k!=m_bAxis);    //停止继续往下执行		 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnRbaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis+m_pulse;     
      SetPulse[5]=m_tAxis;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_bAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_bAxis=GetPulse[4];        
	  }
	  while(k!=m_bAxis);    //停止继续往下执行		 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnTaxispulse() 
{
	// TODO: Add your control notification handler code here
	  UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis-m_pulse;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_tAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_tAxis=GetPulse[5];        
	  }
	  while(k!=m_tAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);
}

void CCTestDlg::OnRtaxispulse() 
{
	// TODO: Add your control notification handler code here
      UpdateData(TRUE);     
      SetPulse[0]=m_sAxis;
      SetPulse[1]=m_lAxis;     
      SetPulse[2]=m_uAxis;   
      SetPulse[3]=m_rAxis;     
      SetPulse[4]=m_bAxis;     
      SetPulse[5]=m_tAxis+m_pulse;     
      BscPMovj(nCid,m_spd,0,SetPulse);
//判断机器人运动是否停止	
      do
	  { 
	     k=m_tAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_tAxis=GetPulse[5];        
	  }
	  while(k!=m_tAxis);    //停止继续往下执行	
	 
//获取机器人各轴脉冲
	  BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
      m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);	
}

void CCTestDlg::OnZero() 
{
	// TODO: Add your control notification handler code here
  
      SetPulse[0]=0;   
      SetPulse[1]=0;     
      SetPulse[2]=0;   
      SetPulse[3]=0;     
      SetPulse[4]=0;     
      SetPulse[5]=0; 
      BscPMovj(nCid,5,0,SetPulse);
//判断机器人运动是否停止		  	  	 
      Delay();
//获取机器人各轴脉冲
	
      BscIsLoc(nCid,1,rconf,GetPulse);
//显示各轴脉冲
	  m_sAxis=GetPulse[0];
	  m_lAxis=GetPulse[1];
	  m_uAxis=GetPulse[2];
	  m_rAxis=GetPulse[3];
	  m_bAxis=GetPulse[4];
	  m_tAxis=GetPulse[5];
	  UpdateData(FALSE);		  
}

int CCTestDlg::Delay()
{
double k0,k1,k2,k3,k4,k5;
//判断轴运动是否停止	
      do
	  { 
	     k0=m_sAxis;
		 k1=m_lAxis;
		 k2=m_uAxis;
		 k3=m_bAxis;
         k4=m_rAxis;
		 k5=m_tAxis;
         Sleep (1);  
		 BscIsLoc(nCid,1,rconf,GetPulse);	  
         m_sAxis=GetPulse[0];
		 m_lAxis=GetPulse[1];
		 m_uAxis=GetPulse[2];
		 m_bAxis=GetPulse[3];
		 m_rAxis=GetPulse[4];
		 m_tAxis=GetPulse[5];
              MSG   msg;   
              while   (::PeekMessage(&msg,   NULL,   0,   0,   PM_REMOVE))   
              {   
                  ::TranslateMessage(&msg);   
                  ::DispatchMessage(&msg);   
              }   
    
	  }
	  while(k0!=m_sAxis||k1!=m_lAxis||k2!=m_uAxis||k3!=m_bAxis||k4!=m_rAxis||k5!=m_tAxis);
	  return 0;
}
//mingerliu@sina.com

void CCTestDlg::OnLongpulse() 
{
	// TODO: Add your control notification handler code here
	m_pulse=5000;
	pulse=m_pulse;
	UpdateData(FALSE);
}

void CCTestDlg::OnMidpulse() 
{
	// TODO: Add your control notification handler code here
	m_pulse=3000;
	pulse=m_pulse;
	UpdateData(FALSE);	
}

void CCTestDlg::OnSmallpulse() 
{
	// TODO: Add your control notification handler code here
	m_pulse=1000;
	UpdateData(FALSE);
}

void CCTestDlg::OnDownload() 
{
	// TODO: Add your control notification handler code here
	
}

void CCTestDlg::OnUpload() 
{
	// TODO: Add your control notification handler code here
//int K=BscUpLoad( nCid, "AAAA.JBI");	
     char*pbuf;
	 int k;
   k=  BscFindFirst( nCid,pbuf,8);
//	 MessageBox(pbuf);
//	UpdateData(FALSE);
}

void CCTestDlg::OnZhijiaozuobiao() 
{
	// TODO: Add your control notification handler code here
	CZHIJIAO zhijiao;
	zhijiao.DoModal();
}

void CCTestDlg::OnJointstepmove() 
{
	// TODO: Add your control notification handler code here
	CJOINT joint;
	joint.DoModal();
}

void CCTestDlg::OnZhijiaomove() 
{
	// TODO: Add your control notification handler code here
	CZHIJIAOZUOBIAO zhijiaomove;
	zhijiaomove.DoModal();
}

void CCTestDlg::OnPulse() 
{
	// TODO: Add your control notification handler code here
	CJOINTMOVE jointmove;
	jointmove.DoModal();
}

void CCTestDlg::OnZhijiao()
{
    // TODO: Add your control notification handler code here


}

void CCTestDlg::OnPathplanning() 
{
	// TODO: Add your control notification handler code here
	CPATHPLANING plan;
	plan.DoModal();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -