uchar k;
   while(p--)
   {
     for(k=0; k<117; k++)
     { }
   }
}
t=1000/rate;       //rate为上位机传来的速度命令,单位为步/S    
delay(t);
下位机控制电机时,是按照腰关节,肩关节,肘关节,手爪的顺序依次控制。先通过上位机传来的命令计算出每个电机运行所需的脉冲数,程序运行时不断检查当前电机的脉冲数是否与实际设定脉冲数相等,若相等,则当前电机停止运行,接着控制下一个电机,脉冲分别是从P0口、P1口、P2口、P3口输出。另外,当上位机有新的命令时,程序立即跳出当前程序转而执行新的命令。具体程序实现如下[21]
(1)电机正转:
      number=0;                      //脉冲数
      if(onoff[i]==1)                //运行与停止标志,i为电机标识
        {
           v=0;                       
         if(direction[i]==1)            //
          {
             while(1)
             {
              if(number!=snum[i])    //脉冲数是否和设定不相等
                {
                if(point!=10)       //上位机是否有新的命令传来
                {
                if(v==8) v=0;
                else
                {
                  number++;
                  switch(i)
                  {case 0:         //腰部回转关节转动
                P0 =FFW[v];
                  delay(t);
                  v++;
                  break;
                  case 1:        //肩关节电机
                  P1 = FFW[v];
                  delay(t);
                  v++;
                  break;
                  case 2:          //肘关节电机
上一篇:三通管拉制仪材料分配系数精确控制系统设计+PCB+源程序
下一篇:HyperWorks模拟实验炮支撑架优化设计与分析

起重机械安全隐患与缺陷...

起重机械产品制造過程安...

谈机械制造系统中的安全控制系统【3099字】

解析电梯定期检验中限速...

电站锅炉机械未完全燃烧...

电子车速里程表的单片机实现方案【1277字】

现代电梯的机械构造及安...

医院财务风险因素分析及管理措施【2367字】

中国学术生态细节考察《...

志愿者活动的调查问卷表

承德市事业单位档案管理...

国内外图像分割技术研究现状

10万元能开儿童乐园吗,我...

C#学校科研管理系统的设计

公寓空调设计任务书

AT89C52单片机的超声波测距...

神经外科重症监护病房患...