如何制作一个自平衡机器人

步骤1:android应用
步骤2 :组件列表和工具
步骤3:组装
步骤4:轮胎和马达总成
步骤5:最终组装
步骤6:电路连接
根据图形连接组件
支付注意匹配电线和端口,而不要反向连接。
步骤7:安装和卸下电池
步骤8:软件和硬件
什么是arduin o?
arduino是一个基于易于使用的硬件和软件的开源电子平台。 arduino开发板能够读取输入-传感器上的灯,按钮上的手指或twitter消息-并将其转换为输出-启动电动机,打开led并在线发布内容。您可以通过向板上的微控制器发送一组指令来告诉您该怎么做。为此,您使用arduino编程语言(基于wiring)和arduino软件(ide)(基于processing)。多年来,arduino一直是数千个项目的大脑,从日常对象到复杂的科学仪器。这个开放源代码平台聚集了世界各地的开发人员社区,包括学生,业余爱好者,艺术家,程序员和专业人士,他们的贡献积累了无与伦比的可访问性知识,对新手和专家都可以提供极大的帮助。 arduino出生于ivrea交互设计学院,是一种快速原型制作的简便工具,主要面向没有电子和编程背景的学生。 arduino板一旦进入更广泛的社区,便开始进行更改以适应新的需求和挑战,将其产品从简单的8位板扩展到iot应用,可穿戴,3d打印和嵌入式环境的产品。所有arduino开发板都是完全开源的,使用户能够独立构建它们,并最终使它们适应其特定需求。该软件也是开源的,并且通过全球用户的贡献而不断发展。
为什么选择arduino?
得益于其简单易用的用户体验,arduino已用于数千个不同的项目和应用程序中。 arduino软件对于初学者来说易于使用,但对于高级用户而言足够灵活。它可以在mac,windows和linux上运行。老师和学生使用它来构建低成本的科学仪器,证明化学和物理原理,或开始编程和机器人技术。设计师和建筑师构建交互式原型,音乐家和艺术家将其用于安装并尝试新的乐器。例如,制造商当然会使用它来构建在maker faire上展出的许多项目。 arduino是学习新事物的关键工具。任何人-儿童,业余爱好者,艺术家,程序员-都可以按照套件的逐步说明进行修补,或者与arduino社区的其他成员在线共享想法。
我应该如何使用arduino?
如果您是arduino的初学者,请访问我们的网站www.adeept.com上的arduino学习套件,将是您踏入这一梦幻领域的完美之举!该车载套件使用一种类型的arduino板:adeept uno r3板
电源
可以通过usb连接或外部电源为arduino/genuino uno板供电。电源是自动选择的。外部(非usb)电源可以来自ac-dc适配器(壁式电源适配器)或电池。可以通过将2.1mm中心正插头插入板子的电源插孔来连接适配器。电池的引线可以插入power连接器的gnd和vin引脚接头中。该板可在6至20伏的外部电源上运行。但是,如果电源电压低于7v,则5v引脚的电源电压可能低于5v,电路板可能会变得不稳定。如果使用的电压超过12v,则稳压器可能会过热并损坏电路板。推荐范围是7到12伏。
电源引脚如下:
vin。 arduino/genuino开发板使用外部电源时的输入电压(与usb连接或其他稳压电源提供的5伏电压相反)。您可以通过该引脚供电,或者,如果通过电源插孔供电,则可以通过该引脚供电。
5v。该引脚从板上的调节器输出稳定的5v电压。可以通过直流电源插孔(7-12v),usb连接器(5v)或板的vin引脚(7-12v)为该板供电。通过5v或3.3v引脚供电会旁路稳压器,并可能损坏电路板。我们不建议这样做。
3v3。板载稳压器产生3.3伏电源。最大电流消耗为50 ma。
gnd。接地引脚。
ioref。 arduino/genuino板上的此引脚提供了供微控制器操作的参考电压。正确配置的屏蔽层可以读取ioref引脚电压并选择合适的电源,或者使输出端的电压转换器能够在5v/3.3v电压下工作。
输入和输出
14个数字引脚中的每个使用pinmode(),digitalwrite()和digitalread()函数,可以将uno上的on用作输入或输出。它们在5伏特下工作。每个引脚可提供或接收20 ma的建议工作条件,并具有20-50k欧姆的内部上拉电阻(默认情况下已断开)。任何i/o引脚上都不得超过40ma的最大值,以免对微控制器造成永久性损坏。此外,某些引脚还具有特殊功能:
串行:0(rx)和1(tx)。用于接收(rx)和发送(tx)ttl串行数据。这些引脚连接到atmega8u2 usb-to-ttl串行芯片的相应引脚。
外部中断:2和3。这些引脚可以配置为在低值,上升沿或下降沿或值改变时触发中断。有关详细信息,请参见attachinterrupt()函数。
pwm:3、5、6、9、10和11。提供带有analogwrite()函数的8位pwm输出。
spi:10(ss),11(mosi),12(miso),13(sck)。这些引脚支持使用spi库的spi通信。
led:13.有一个由数字引脚13驱动的内置led。当该引脚为high值时,该led点亮;当该引脚为low时,其熄灭。
twi:a4或sda引脚以及a5或scl引脚。使用wire库支持twi通信。 uno有6个模拟输入,标记为a0至a5,每个模拟输入提供10位分辨率(即1024个不同值)。默认情况下,它们的测量范围是从地到5伏,尽管可以使用aref引脚和analogreference()函数更改其范围的上限。
板上还有其他几个引脚:
aref。模拟输入的参考电压。与analogreference()一起使用。
重置。将此线拉低以复位微控制器。
第9步:arduino软件(ide)
arduino软件(ide)用于编写和上传arduino开发板的代码。首先,安装arduino软件(ide):访问https://www.arduino.cc/en/main/software。根据您的操作系统下载相应的安装程序。如果您是windows用户,请选择“ windows installer”以正确下载并安装驱动程序。
下载完成后,运行安装程序。对于windows用户,在安装过程中可能会弹出驱动程序的安装对话框。出现时,请同意安装。安装完成后,将在桌面上生成arduino软件快捷方式。运行ide。
第二张图片是arduino软件的界面。
arduino集成开发环境-或arduino软件(ide)-包含用于编写代码的文本编辑器,消息区域,文本控制台,带有常用功能按钮的工具栏以及一系列菜单。它连接到arduino和genuino硬件,以上传程序并与它们通信。
验证:编译时检查代码是否存在错误。
上传:编译代码并将其上传到配置的板上。在上传草图之前,需要从“工具”》“板”和“工具”》“端口”菜单中选择正确的项目。这些板描述如下。在mac os x上,串行端口可能类似于/dev/tty.usbmodem241(对于uno或mega2560或leonardo)或/dev/tty.usbserial-1b1(对于duemilanove或更早的usb板),或/dev/tty.usa19qw1b1p1.1(用于与keyspan usb到串行适配器连接的串行板)。在windows上,可能是com1或com2(对于串行板)或com4,com5,com7或更高版本(对于usb板)-要找出答案,您可以在windows设备管理器的端口部分中查找usb串行设备。在linux上,它应该是/dev/ttyacmx,/dev/ttyusbx或类似的文件。
选择正确的串行端口和板后,请按工具栏中的上载按钮或从草图菜单。当前的arduino开发板将自动重置并开始上传。对于没有自动重置功能的旧版主板(diecimila之前的版本),您需要在开始上传之前按一下主板上的重置按钮。在大多数板上,随着草图上传,您将看到rx和tx led闪烁。上载完成后,arduino软件(ide)将显示一条消息,或显示错误。
上载草图时,您使用的是arduino引导程序,该程序已加载到微控制器上。您的董事会。它使您无需使用任何其他硬件即可上传代码。板复位时,引导加载程序处于活动状态几秒钟。然后从最新上传到微控制器的草图开始。引导加载程序启动时(即,板复位时)将使板载(引脚13)led闪烁。
注意:如果您在板上使用外部编程器,则可以按住“使用此图标时,在计算机上单击“ shift”键。文本将更改为“使用programmer上载”。
新建:创建一个新草图。
打开:显示素描簿中所有素描的菜单。单击一个将在当前窗口中将其打开,覆盖其内容。
注意:由于java中的错误,此菜单无法滚动;如果需要在列表的后面打开草图,请使用“文件” |“打开”。而不是sketchbook菜单。
保存:保存草图。
串行监视器:打开串行监视器。在五个菜单中找到其他命令:“文件”,“编辑”,“草图”,“工具”和“帮助”。菜单是上下文相关的,这意味着只有与当前正在执行的工作相关的那些项目可用。
从1.0版开始,文件以.ino文件扩展名保存。早期版本使用.pde扩展名。您仍然可以在1.0版及更高版本中打开.pde命名文件,该软件将自动将扩展名重命名为.ino。
步骤10:安装库
提供的示例草图使用adeept_balance2wd.zip,adeept_kalmanfilter.zip,adeeptdistance.zip,i2cdev1.zip,mpu6050.zip,mstimer2.zip和pinchangeint-master.zip库,因此您需要在编译之前安装它。单击“ add.zip库”,将adeept_balance2wd.zip,adeept_kalmanfilter.zip,adeeptdistance.zip,i2cdev1.zip,mpu6050.zip,mstimer2.zip和pinchangeint-master.zip库添加到库文件夹中。
库成功安装后,您可以在sketch-》 include library
下找到adeept_balance2wd.zip,adeept_kalmanfilter.zip,adeeptdistance.zip,i2cdev1.zip,mpu6050.zip,mstimer2.zip和pinchangeint-master.zip库。 》
步骤11:上传程序
在完成上述准备后,接下来我们将上传程序(提供示例草图)到adeept uno r3板。
注意:在下载程序之前,请先删除蓝牙模块,否则下载程序将失败。
打开为控制板提供的程序,文件“ adeeptselfbalancingrobotcode.ino”。
将arduino uno r3板连接至pc。选择工具-》板“ arduino/genuino uno”,然后选择端口-》 com9。同样是分配给uno的com9,但也可以是com1,com2,com3 。..
单击按钮将草图上传到板上。


微雪电子STM32 QFP64测试座介绍
太赫兹测试的简单介绍
华为在努力建立自己的供应链并推广其HarmonyOS操作系统
时钟IP核常用设置
高通骁龙865转单三星7纳米,或将不利其5G芯片
如何制作一个自平衡机器人
英伟达和AnyVision合推闭路电视摄像头配备面部识别技术
创基Type-C扩展坞内外兼备的得了助手
小米已完成第七款机型升级Android7.0/7.1了!
区块链钱包合法吗_区块链钱包开发的两种方法
印度电信市场乱局尽显 看三巨头如何应对
一文带你了解交错式ADC(数据转换器)
iPhone使用的不锈钢中框,为何其他厂商不使用?不锈钢有哪些的优势?
使用PIC16F1885x CIP设计可通讯调光的大功率植物补光金卤灯电子镇流器
史上最豪华!AMD全新旗舰卡最全评测
美国为什么会丢失制造业
新能源客车发展面临五大难题
浙江省通信管理局党组书记一行到访紫光股份智能制造工厂
莱盛隆植保无人机3大技术惊艳市场_3大技术都是哪些?
浅析GSM/TD-LTE共站共天馈规模组网方案