arduino麦轮转弯程序_麦克纳姆轮智能小车接线方案

折腾了好几天,实在搞不定了,决定上来社区求助。

现在的硬件情况是这样的:

- HM-GM37-3429霍尔传感器大载重电机,每个电机六条线,其中电机输入两个,霍尔编码器电源两个,编码器AB相两个

- 四个电机,不算电源线的话,每个电机要使用3个Arduino的端口(控制高低电平和PWM)+两个编码器AB相数据输入,共需要20个端口

- Arduino Uno

- L298N四路驱动器

- 12V电池

我遇到的问题是:

1. 不知道怎样接线才能把电机和霍尔编码器都用上

2. 考虑过扩展板,但即便用了Nano+扩展板能插上线,Arduino也只有1~13,A1~A7这么多的端口,如何能同时控制电机又可以获取到四个霍尔编码器的值?

还有就是目前电机总是时转时不转的,折腾了5,6个小时了不清楚原因,还望各位大神可以多支招,已排查以下情况:

- 全部杜邦线已用万用表测量过是通的

- L298N是正常的,用了两块同样的板子试过还是这样

- 电机用电池直连测试过是可以转的

唯一没有测过的就是Arduino Uno是不是正常的了,但这个不知道有没有简便的方法可以测试?

谢谢大家!

以下是我的测试代码:

[mw_shl_code=arduino,true]/*

* Sample Code for testing car running

*/

//Define the Pins

//Motor 1

int pinAIN1 = 4; //右前马达

int pinAIN2 = 2; //右前马达

int pinPWMA = 3; //右前马达PWM

int pinAIN3 = 7; //左前马达

int pinAIN4 = 6; //左前马达

int pinPWMB = 5; //左前马达PWM

int pinAIN5 = 10; //右后马达

int pinAIN6 = 8; //右后马达

int pinPWMC = 9; //右后马达PWM

int pinAIN7 = 12; //左后马达

int pinAIN8 = 13; //左后马达

int pinPWMD = 11; //左后马达PWM

//Standby

int pinSTBY = 12;

void setup()

{

Serial.begin(9600);

//Set the PIN Modes

pinMode(pinAIN1, OUTPUT);

pinMode(pinAIN2, OUTPUT);

pinMode(pinPWMA, OUTPUT);

pinMode(pinAIN3, OUTPUT);

pinMode(pinAIN4, OUTPUT);

pinMode(pinPWMB, OUTPUT);

pinMode(pinAIN5, OUTPUT);

pinMode(pinAIN6, OUTPUT);

pinMode(pinPWMC, OUTPUT);

pinMode(pinAIN7, OUTPUT);

pinMode(pinAIN8, OUTPUT);

pinMode(pinPWMD, OUTPUT);

pinMode(pinSTBY, OUTPUT);

}

void loop()

{

//12A

Serial.println("前");

int speed = 255;

digitalWrite(pinAIN1, 1);

digitalWrite(pinAIN2, 0);

analogWrite(pinPWMA, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMA, 0);

delay(1000);

Serial.println("后");

digitalWrite(pinAIN1, 0);

digitalWrite(pinAIN2, 1);

analogWrite(pinPWMA, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMA, 0);

delay(1000);

//34B

Serial.println("后");

digitalWrite(pinAIN3, 1);

digitalWrite(pinAIN4, 0);

analogWrite(pinPWMB, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMB, 0);

delay(1000);

Serial.println("前");

digitalWrite(pinAIN3, 0);

digitalWrite(pinAIN4, 1);

analogWrite(pinPWMB, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMB, 0);

delay(1000);

//56C

Serial.println("前");

digitalWrite(pinAIN5, 1);

digitalWrite(pinAIN6, 0);

analogWrite(pinPWMC, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMC, 0);

delay(1000);

Serial.println("后");

digitalWrite(pinAIN5, 0);

digitalWrite(pinAIN6, 1);

analogWrite(pinPWMC, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMC, 0);

delay(1000);

//78D

Serial.println("后");

digitalWrite(pinAIN7, 1);

digitalWrite(pinAIN8, 0);

analogWrite(pinPWMD, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMD, 0);

delay(1000);

Serial.println("前");

digitalWrite(pinAIN7, 0);

digitalWrite(pinAIN8, 1);

analogWrite(pinPWMD, speed);

delay(2000);

Serial.println("结束");

analogWrite(pinPWMD, 0);

delay(1000);

/*

*/

}[/mw_shl_code]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502040.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中range 函数_pythonrange,range函数的用法

当range()函数内填入第三个参数时,第三个参数表示百步长。函数语法:range(start,stop[,step])参数说明:start:计数从度start开始。默认是从0开始。例知如道range(5)回等价于range(0,5&#xff0…

xss植入_网站xss漏洞的利用过程

XSS跨站脚本,是一种Web安全漏洞,有趣是是他并不像SQL注入等攻击手段攻击服务端,本身对Web服务器没有危害,攻击的对象是客户端,使用浏览器访问这些恶意地址的网民。这里就跟大家稍微讲解一下网站xss漏洞的利用过程。网站…

html制作状态栏数字时钟,html5 canvas制作15种数字时钟样式代码

特效描述:html5 canvas制作 数字时钟样式。html5 canvas数字时钟代码代码结构1. 引入CSS2. 引入JS3. HTML代码clockd1_{"indicate": true,"indicate_color": "#222","dial1_color": "#666600","dial2_color…

python出现的次数最多的元素_【Python 秘籍】序列中出现次数最多的元素

问题 怎样找出一个序列中出现次数最多的元素呢? 解决方案 collections.Counter 类就是专门为这类问题而设计的, 它甚至有一个有用的 most_common() 方法直接给了你答案。 为了演示,先假设你有一个单词列表并且想找出哪个单词出现频率最高。你…

华为申请注册鸿蒙商标,华为申请“鸿蒙商标”,企业注册商标有什么价值?

原标题:华为申请“鸿蒙商标”,企业注册商标有什么价值?国家知识产权局商标局网站显示,华为已申请“华为鸿蒙”商标。申请日期为2018年8月24日,注册公告日期为2019年5月14日,专用权限期是从2019年5月14日到2…

dabs是什么意思_cpdd是什么意思(网络语cpdd是什么梗啥意思)

随着网络的快速发展,抖音和微博这样的软件也是越来越火,因此很多流行语就随之诞生,特别是在抖音里,经常看到游戏相关的用语,比如桃酥和阿姨打LOL时候,就出现了很多高校的流行语,其中“cpdd”这个…

python coding utf-8_【转】怎么在Python里使用UTF-8编码

基本概念 在Python里有两种类型的字符串类型:字节字符串和Unicode的字符串,一个字节字符串就是一个包含字节列表。 当需要的时候,Python根据电脑默认的locale设置将字节转化成字符。 在Mac OX上默认的编码是UTF-8,但是在别的系统上&#xff0…

lisp6 暖通cad_(完整版)暖通CAD设计技巧1

暖通CAD设计技巧1.执行编辑命令,提示选择目标时,用矩形框方式选择,从左向右拖动光标,为"窗口Windows"方式,如果从右向左拖动光标,则为"交*Cross"方式。2.相对坐标输入点时,…

html5音乐播放器设计论文,基于微信小程序的音乐播放器设计和毕业论文

摘 要随着通信技术的发展和智能设备的普及,移动互联网在近两年发展迅猛,新兴的移动社交软件“微信”逐渐走进了手机用户的生活,深受全国数亿用户的欢迎。随着微信版本的不断更新,微信也从单纯的聊天应用逐变成媒体信息、游戏娱乐…

python递归_python3之递归

1、递归的特点 递归算法是一种直接或间接调用自身算法的过程,在计算机编程中,递归算法对解决一大类问题是十分,它往往使算法的描述简洁而且易于理解。 递归算法解决问题的特点: (1)递归就是在过程或函数里调…

什么原因导致芯片短路_PCB电路板短路的原因及解决方法-EDA/PCB-与非网

【导读】焊接短路(如:连锡)、PCB 短路(如:残铜、孔偏等)、器件短路、组装短路、ESD/EOS 击穿、电路板内层微短路、电化学短路(如:化学残留、电迁移)、其他原因造成的短路。首先,了解一下常见的电路板短路的种类:短路按…

html表格按钮相对位置不变,表格中如何使td或div相对定位在某一行上面

有个需求,就是点击表格某一行,上面要居中显示一组菜单。而列表需要有1列或多列不固定宽度,有的是百分比宽度,有的是固定宽度(就是传统的table用法,或者CSS3的Flex Box)小伙伴的实现是用table,js算出距表头的…

python远程监控jvm_python和jstat命令采集jvm数据导入zabbix监控-阿里云开发者社区

利用python和jstat命令采集jvm数据注:用法运行python jvcheck.py 变量如EC或E等#codingutf-8#authoryangzai# 用jstat检查jvm信息然后用zabbix监控import commandsimport sysjvmvarssys.argv[1](status, PID) commands.getstatusoutput("sudo -u tomcat jps|g…

pythonstdin_如何写入Python子进程'stdin?

下面是它的样子对NUKE 11.3v4的商业版本Windows 10:import subprocess# Run NUKEs script in Terminal mode on Windows machine...subprocess.Popen([C:/Program Files/Nuke11.3v4/Nuke11.3.exe, -t, E:/NukeTest/test.nk], stdinPIPE, stdoutPIPE) 以下是NUKE 11.…

html信号动画,HTML5 Canvas火箭着陆和雷达信号动画

JavaScript语言:JaveScriptBabelCoffeeScript确定let canvas document.querySelector(canvas);let ctx canvas.getContext(2d);canvas.width document.body.clientWidth;canvas.height 150;let centerX canvas.width / 2;let centerY canvas.height / 2;let l…

python后端开发学什么_零基础学Python,这是阿里Python8年开发经验写给你的学习路线图...

今天给大家分享一位前辈整理的一个Python web学习路线。这位前辈由于有编程基础,所以采用了自学Python的方式。学完后主要做后端开发。希望对你有所启发。 整理的一个 python web 学习路线,这基本就是笔者自学后做后端的学习路线。入门基础 编程语言: Py…

html filter 在线预览,HTML Filter

HTML Filter05/31/20182 分钟可看完本文内容NoteIndexing Service is no longer supported as of Windows XP and is unavailable for use as of Windows 8. Instead, use Windows Search for client side search and Microsoft Search Server Express for server side search.…

xftp6设置默认打开文件的程序_xftp6如何使用?xftp6传输文件的使用详细方法--系统之家...

xftp6是一款功能强大主要用于SFTP、FTP 文件传输的软件,能够帮助用户安全地在 UNIX/Linux 和 Windows PC 之间传输文件。很多小伙伴下载了软件后对于xftp6怎么使用不太清楚,下面小编就把xftp6使用详细方法分享给大家!Xftp6使用方法&#xff1…

如何把meshlab中的圆环去掉_如何设计一座太空城?

整整半个世纪前的今天,1969年7月20日,执行阿波罗11号计划的美国宇航员阿姆斯特朗和奥尔德林登上月球。而同一年,伍德斯托克音乐节的舞台前聚集了几十万名追求和平与爱的青年。在神奇的1969年,人类文明向着更为广袤与深邃的境地突飞…

axure html 360安装扩展,win10系统360浏览器添加Axure扩展的操作方法

win10系统360浏览器添加Axure扩展的操作方法?很多win10用户在使用电脑的时候,会发现win10系统360浏览器添加Axure扩展的的现象,根据小编的调查并不是所有的朋友都知道win10系统360浏览器添加Axure扩展的的问题怎么解决,不会的朋友也不用担心…