wing 发表于 2017-2-21 21:39:43

起床前的准备——OCROBOT新款GAMA+L6205电机驱动测试

本帖最后由 wing 于 2017-2-21 21:51 编辑

农历年前已经收到了OC的GAMA系列新品,之前只发了开箱帖。

那么现在来说说初次测试的体验吧:
首先,L6205电机驱动驱动板是为gama设计的,针脚位置和标准的UNO不太一样,不过配合GAMA主控还是很方便的
其次,这次测试会加入编码器中断计数,GAMA主控芯片是328配16M的晶振,用来测7K转左右的电机还是桌桌有娱的
还是用之前那种履带电机,20线的旋转光电码盘,LM393的判断器,还是那8颗杂牌AA电池 不过电压已经降到10v以下了
最后要补充的是,我是不会看那些无聊的娱乐八卦新闻节目的

针脚定义:
         电机A        电机B
方向D12          D13
速度D3                D11
制动D9                D8

D2针脚接收中断信号,对应程序的0号中断,然后实物看上去有点乱乱的






下面是串口输出的结果


下面还有完整的代码和其他更精彩的内容,请继续看下去吧

wing 发表于 2017-2-21 21:40:56

本帖最后由 wing 于 2017-2-21 21:49 编辑

这次测试的代码,正向转两秒输出计数,然后再反向转两秒输出计数,其中反向的PWM占空比大一些,让两次计数看起来有些不一样


//gama 电机板实验 + 中断计数器

int p_led = 4;                //接LED

int p_b_fx =13;//B机方向
int p_b_dl =11;   //B机动力
int p_b_zd =8;   //B机的制动

volatile unsigned int rotary_encoder_count;

void setup() {

Serial.begin(9600);

pinMode(p_led, OUTPUT);

//启用电机B的三个管脚,全部设置为输出状态
pinMode(p_b_fx,OUTPUT); //B机方向
pinMode(p_b_dl,OUTPUT); //B机动力
pinMode(p_b_zd,OUTPUT); //B机的制动
}

void rotary_encoder_int()
{
if (rotary_encoder_count<65535)
    rotary_encoder_count=rotary_encoder_count+1;
else
    rotary_encoder_count=0;
}

void loop() {
digitalWrite(p_led, HIGH);//指时灯亮

//初始化计数器
rotary_encoder_count=0;
attachInterrupt(0, rotary_encoder_int, CHANGE);//2号针脚接收中断信号

//B机状态 运行
digitalWrite(p_b_zd, LOW);       //松开电机B的制动
digitalWrite(p_b_fx, HIGH);   //设置方向为正向
//B机动力
analogWrite(p_b_dl,200);

delay(2000);
//持续2秒后输出 停电机 关中断输出计数
analogWrite(p_b_dl,0);
digitalWrite(p_b_zd, HIGH);   
detachInterrupt(0);
Serial.println(rotary_encoder_count);

digitalWrite(p_led, LOW);//指时灯关
delay(5000);
digitalWrite(p_led, HIGH);//指时灯亮
rotary_encoder_count=0;//计数器清零
attachInterrupt(0, rotary_encoder_int, CHANGE);//2号针脚接收中断信号   

digitalWrite(p_b_zd, LOW);       //松开电机B的制动
digitalWrite(p_b_fx, LOW);   //设置方向为反向
//B机动力
analogWrite(p_b_dl,75);   

delay(2000);
//持续2秒后输出 停电机 关中断输出计数
analogWrite(p_b_dl,0);
digitalWrite(p_b_zd, HIGH);   
detachInterrupt(0);
Serial.println(rotary_encoder_count);

digitalWrite(p_led, LOW);//指时灯关
delay(5000);
}

个人来说还是很喜欢OC的IDE默认的配色风格,看起来很高格B




wing 发表于 2017-2-21 21:49:15

本帖最后由 wing 于 2017-2-22 00:53 编辑

还有视频,当然审核时需要时间的...

http://player.youku.com/player.php/sid/XMjUyNDM3NDM2OA==/v.swf

转起来的样子还是非常可爱的,那么接下来要做点什么呢?

当然这些实验都是为了履带精灵2号机准备的,不过2号机的主控已经确定是wemos D1了,将会遇到的是电平转换的问题,
因为328是5V的,不过8266就是3.3V,那么我要先研究一下升压电路了

小猪会轮滑 发表于 2017-2-22 12:50:11

:lol:lol:lolOCROBOT GAMA

单片机菜鸟 发表于 2017-2-23 10:14:27

可以啊哈哈哈哈哈

darkorigin 发表于 2017-2-24 17:19:37

用电击疗法起床?

wing 发表于 2017-2-24 17:57:47

履带闹钟,从脸上压过去
页: [1]
查看完整版本: 起床前的准备——OCROBOT新款GAMA+L6205电机驱动测试