找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2511|回复: 0
收起左侧

51单片机搬运机器人Proteus仿真程序

[复制链接]
ID:888341 发表于 2021-4-3 15:47 | 显示全部楼层 |阅读模式
电机仿真机器车仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
51hei.png


流程说明:

1,一上电,先通过按按键设置物块的高度和体积

2,注意,物块高度或者体积只要有其中一个为0时,不能开始搬运

3,按下开始搬运按键,即开始搬运,
流程是
机械臂先把物块抓取到机器车上,
机械臂减速
机器车带着物块前往目的地
机器车减速
机械臂把物块放下来
机械臂减速
机器车回到物块堆积处(此时机器车是空车)
机器车减速
蜂鸣器响,提示本次搬运已经完成


4,这时候按下机器复位按键,开始下一次设置物块参数和搬运

搬运物块完成提示模块
第一行显示的是物块的高度和机器车与物块堆积处的距离
第二行显示的是物块的体积或者直径或者质量
51hei.png

单片机源程序如下:
  1. #include"DS18B20.h"
  2. #include "Lcd1602.h"
  3. #include"KEY.h"       

  4. #define uint unsigned int

  5. extern  bit Start18B20();
  6. extern  bit Get18B20Temp(int *temp);
  7. extern  uchar keyvalue;

  8. void display(uint num);
  9. void read_del8b20();

  10. unsigned char PuZh[]="Temperature";
  11. unsigned char SetL[7]="L:";
  12. unsigned char SetH[7]="H:";

  13. extern uchar m;

  14. unsigned char shu[4]={0};

  15. unsigned char Ltemp[3]={1,2,3};
  16. unsigned char Htemp[3]={3,2,1};

  17. extern uchar LNextBit;
  18. extern uchar HNextBit;

  19. unsigned char pwm=0,count=0;

  20. bit res;
  21. int temp;
  22. int intT=0,decT;
  23. int i=0;
  24. int cha=0;
  25. int time1=0;


  26. void main(void)
  27. {
  28.           unsigned n=0;

  29.       InitLcd1602();
  30.           Start18B20();

  31.        
  32.         while(1)
  33.         {
  34.                  read_del8b20();
  35.                 delay1(1300);
  36.                 if(intT != 85)
  37.                 {
  38.                    i=intT;
  39.                 }
  40.                 deal();

  41.                 display(i*10);
  42.                 alarm();
  43.         }                               
  44. }


  45. void read_del8b20()
  46. {
  47.           res=Get18B20Temp(&temp);
  48.           if(res)
  49.           {
  50.            intT=(temp>>4);
  51.            decT=temp&0xf;
  52.      }
  53.           Start18B20();
  54.           DelayX10us(5);
  55. }

  56. void display(uint num)          
  57. {
  58.          shu[0]=num/100+0x30;
  59.              shu[1]=num%100 /10+0x30;
  60.              shu[2]='.';
  61.                  shu[3] = num%10+0x30;

  62.                  SetL[2] = Ltemp[0]+0x30;
  63.                  SetL[3] = Ltemp[1]+0x30;
  64.                  SetL[4] = '.';
  65.                  SetL[5] = Ltemp[2]+0x30;

  66.                  SetH[2] = Htemp[0]+0x30;
  67.                  SetH[3] = Htemp[1]+0x30;
  68.                  SetH[4] = '.';
  69.                  SetH[5] = Htemp[2]+0x30;

  70.                     LcdShowStr(0,0,PuZh);
  71.                 LcdShowStr(0,1,SetL);
  72.                 LcdShowStr(9,1,SetH);
  73.                 LcdShowStr(12,0,shu);

  74. }
复制代码
51hei.png
所有资料51hei提供下载:
搬运机器人.zip (226.18 KB, 下载次数: 69)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表