Adapter模块

Adapter模块是一个转接适配模块,用于适配ELF主控板接舵机、RGB灯条、DS18B20温度棒、土壤湿度传感器等。

参数

/描述

MCU工作电压

DC 5V

电机电压

DC 6V~12V

接口类型

插针与ELF主控板适配使用

通信方式

WM单总线

电机通道

1个编码电机或2个直流电机

单通道持续输出电流

2A

单通道峰值电流

4A

尺寸大小

--mm*--mm*--mm(**)

l  准确的控制编码电机的位置

l  提供实时的位置和速度反馈

l  采用排针排母组合方式,防止反接

l  模块体积小巧,接插方便

本模块目前只能用于ELF主控板上,可以接插在ELF主控板上的port3-port64个口上,以及2560比赛扩展板的port7-port93个口上。

直流电机是接插在ELF主控板的橘红色端子上,编码电机是接插在驱动模块的白色端子上。编码电机和直流电机不可同时插上,这样会造成电流过大且不好控制的问题。

 

    该模块支持的图形化编程平台有WeeeCodeMixly_Arduino等,其图形化编程大同小异,区别不会很大。

模块功能

需传参数

图形化编程块举例(其他平台图形化编程块大同小异)

设置0

(1个参数)端口

以某速度运行(不检测速度)

(2个参数)端口、速度

以某速度运行(检测速度),注:这个速度是50ms的脉冲数

(2个参数)端口、速度

以某速度在移动某位置(相对位置)

(2个参数)端口、移动量

 

图形化编程示例:

Arduino编程函数:

函数名

功能

WeEncoderMotor(uint8_t port)

设置端口号

run(int16_t speed)

以某速度运行(不检测速度)

getCurrentPosition(void)

获取当前的位置

setPositionOrigin(void)

设置0

stop(void)

停止

moveTo(uint8_t speed,long position)

以某速度移动到某位置(绝对位置)

move(uint8_t speed,long position)

以某速度在移动某位置(相对位置)

runSpeed(int16_t speed)

以某速度运行(检测速度),注:这个速度是50ms的脉冲数

 

Arduino编程示例:


#include "WeELF328P.h"
WeEncoderMotor motor1(PORT_3);

uint8_t motorSpeed = 100;
void setup()
{  
  Serial.begin(9600);
  delay(2000);
  motor1.setPositionOrigin();
}

void loop() 
{
  Serial.println(motor1.getCurrentPosition());
  motor1.moveTo(motorSpeed,585);
  delay(3000);
  
  Serial.println(motor1.getCurrentPosition());
  motor1.moveTo(motorSpeed,1);
  delay(3000);
}  

和使用电机一样,不能长时间快速正反转,这样会造成电流过大,发热量大,烧毁模块上的驱动芯片。