文号
t41319
阅读
8510
回复
8
收藏
6
【共享】一些机器人资料
2012/03/02
IP:广西
附件都是一些平时研究机器人用的,有的无用,有的有用,就看各位看官的需要了。那些资料对我帮助很大,我也希望能一起提高之。文件小的几百K大的几兆哦。来到这一个技术类论坛,倍感亲切。
attachment icon 压电式微机械爬虫.pdf 662.54KB PDF 147次下载 预览
attachment icon 六足爬虫机器人设计.doc 592.00KB DOC 33次下载
attachment icon 基于单片机设计的简易智能机器人.doc 240.50KB DOC 36次下载
attachment icon Build Your Own Reptilian Robot - McGraw Hill.pdf 6.00MB PDF 159次下载 预览
attachment icon 2006足球机器人搭建手册V2.pdf 1.82MB PDF 165次下载 预览
attachment icon 《基础机器人学与宝贝车机器人》.pdf 4.44MB PDF 2681次下载 预览
+10
科创币
云烟
2012/03/02
鼓励资料共享。蛋痛的是下了个是繁体。阅读巨累
+100
科创币
kknd
2012/03/02
高质量发帖
14年10个月前IP:未同步
372745
1楼
看来LZ你是新会员啊。不过看你传的资料觉得。我最近搞机器人遇到困难找你哦。呵呵。前面呢我在搞火箭。能材。电弧。于是对于机器人就是一张白纸。除了自己没事学了点单片机。C语言。其他几乎0基础的。。。
引用
评论
ga7705作者
14年10个月前IP:未同步
372746
2楼
嗯,是的,最近搞舵机双足,麻烦啊,毕竟我只是一个大专毕业又来教初中生的老师,好多知识都要补,我希望大家能帮一帮,
引用
评论
14年8个月前IP:未同步
391003
3楼
楼上的强悍啊,我最近也发烧机器人了,买了8个小舵机,但连驱动一个舵机的程序都写不出来,哎,悲剧了 我用89C52的
引用
评论
14年8个月前IP:未同步
391078
4楼
表示也刚学,来一段我控制舵机的代码
#include<reg52.h>
sbit key1=P3^0;
sbit key2=P3^1;
sbit key3=P3^2;
sbit key4=P3^3;
sbit pwm=P1^0;
char d=5,f;
void f1(unsigned char a)
{
char b;
for(a;a>0;a--)
    for(b=100;b>0;b--);
}
void main()
{
while(1)
{
if(key4==0)
{
d=5;
for(f=4;f>0;f--)
   f1(200);
   }
if(key3==0)
{
for(f=4;f>0;f--)
   f1(200);
d=11-d;
}
if(key1==0)
{
for(f=4;f>0;f--)
{  
f1(200);
}
d--;
}
if(key2==0)
{
for(f=4;f>0;f--)
   f1(200);
d++;
}
if(d<3)
{
d=11;
}
if(d>11)
{
d=3;
}
f1(d);   /*3 to 11*/  /*~~~~~~~2 */
pwm=0;
f1(150);
pwm=1;
}
}
引用
评论
14年8个月前IP:未同步
391570
5楼
楼上的那个程序晶振是多大的,我也复制上来一段代码吧,但这个代码就是只能转一圈,不能回来。悲剧,我也改不好
谁可以帮我把这个程序改一下,可以让舵机左右摇摆的?我改了好久也改不好了
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit dr1=P1^0;

uint cnt1;
uchar x = 11;    //X表示脉冲宽度 。开始为1ms

void delay(uint xms);    //x毫秒级延时

void main()
{
    
    TMOD  = 0x01;
    TH0 = 0xff;               //TH0 = (65536-100)/256;      
    TL0 = 0x9c;               //TL0 = (65536-100)%256;    
    EA = 1;
    ET0 = 1;
    TR0 = 1;
    while(1)
    {              
                                
                               x = 15;        //中心位置 1.5ms脉冲
        delay(1000);   //延时1s
                              
                                x = 13;        //左转     1.3ms脉冲
        delay(1000);
                                
                    
          
        x = 17;        //右转     1.7ms脉冲
        delay(1000);
                                        
                                  
                                        
    }
}

void delay(uint xms)          //x毫秒级延时
{
    uint i,j;
    for(i=xms;i>0;i--)
    for(j=120;j>0;j--);
}

void T0_timer() interrupt 1      //0.1ms中断  PPM信号发生器   1-2ms(1.5ms时为舵机中心值) 采用的是51单片机速度不是很快,所以精度不高
{
    TH0 = 0xff;               //TH0 = (65536-100)/256;      
    TL0 = 0x9c;               //TL0 = (65536-100)%256;        
    cnt1++;                      //中断计数
    
    if(cnt1==x)              //高电平为 X*0.1 ms
    {
        dr1=1;            //输出高电平
    }
    else
    {
        dr1 =0;            //高电平结束,剩下的时间执行低电平
        if(cnt1==200)           //周期为20ms
                      
                            {
        cnt1 = 0;          //周期完成,重新计数
        }    
    }
                    
}
引用
评论
14年8个月前IP:未同步
391571
6楼
回 5楼(飞天狂想) 的帖子
我用12MHZ晶振
引用
评论
14年8个月前IP:未同步
391576
7楼
那个,你那个程序是,用按键控制的。我只想弄个来回摇摆,不用按键就行了的,但这个程序改了又改,还是只能转一圈,就回不来了
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的