如何使用Arduino从乐高玩具中创建一个盒子

步骤1:您需要什么
要从lego创建一个无用的盒子,我使用了以下部分
arduino one
2个伺服电机(sg90)
碰撞开关
电路板
led
电阻
跳线
第2步:创建无用的盒子
乐高积木很难正常工作,并将舵机连接到乐高。我用了一些螺丝将齿轮拧到伺服上。
我用一个伺服器打开盒子的门,另一个用伺服器将开关移回(再次将其关闭)。完成机械零件后,可以将其全部关闭。
步骤3:将所有零件连接在一起
连接从arduino到面包板+的5v,到面包板-的gnd。接下来,将面包板的+和-连接至伺服器的+和-,并将信号线连接至arduino的a0和a2(我将所有东西都首先连接到面包板)
连接碰撞传感器gnd和vcc到面包板的-和+,并将输出/信号连接到ardiono的数字4引脚。
将led放在面包板上,将+(长脚)连接到面包板ardiono的引脚6。将-(短脚)连接到电阻器,并将电阻器的另一端连接到面包板的-。
步骤4:代码
该代码非常灵活
设置一些值,包括伺服电动机的上下限,led和传感器的引脚。
#include
伺服伺服1;
伺服伺服器2;
#define up 10
#define down 60
#define door_up 60
#define door_down 10
#define button 4
#define led 6
初始化电动机并设置将它们置于关闭位置
void setup(){
servo1.attach(16);结果,servo2.attach(14);结果,下移();结果,movedoordown();结果,serial.begin(19200);
pinmode(led,output);
}
检查每个循环是否按下按钮以随机延迟触发电机
void loop(){
int val = digitalread(button);
if(val == low){
digitalwrite(led,high);
int rnd = random(1000,4000);
delay(rnd);结果,movedoor();结果,延迟(100);
}其他{
digitalwrite(led,低);
}
}
helper函数来移动把手和门
void movedown() {
serial.println(“ move down”); servo1.write(down);
}
无效movedoordown(){
servo2.write(door_down);
}
无效movedoor(){
serial.println(“移动门”);结果,servo2.write(door_up);结果,延迟(500);结果,movehandle();
}
void movehandle(){
serial.println(“ move up”);
servo1.write(up);
延迟(300);结果,下移();结果,延迟(300);结果,movedoordown();
}


充电桩的大发展将使得新能源电动汽车迎来新机遇
珍“希”好价,狂欢开启 玩转618,希捷惊爆价一触即发
通过RS485同步广播实现多通道视频同步采集方案
5G的助力VR迎来功能和应用的进一步升级,产业发展迎来新机遇
倍加福光通讯DAD15助力智慧物流运输
如何使用Arduino从乐高玩具中创建一个盒子
五分钟看完克莱斯勒300C C-NCAP碰撞测试全过程
神级DIY:戴上快乐的智能帽
语音识别的技术原理及语音识别系统的分类
【智慧工厂园区能源管理控制集成系统】
如果比特币和加密货币是作为一种投资资产那么价格波动就不是问题
安装油烟在线监测设备还有哪些好处?
Zoom适配于M1 Mac的本机版本正在更新中
苹果WWDC 2021将于6月7-11日举行
鸿蒙推箱子小游戏:UI界面美化
元器件的封装形式有哪些?
人工智能和加密货币发展迅速,将使GPU一直处于供应短缺的状态
模数转换器时钟优化:测试工程观点
教你如何用万用表判断电解电容的正负极
Type-C与手机接口的往事