贪吃机器人DIY(一)

本文介绍了如何DIY一个贪吃机器人,利用3D打印技术和简单的电子元件,如红外距离传感器和舵机,通过Arduino Nano进行控制。3D打印部件耗时较长,而控制原理主要是通过红外传感器检测前方障碍物,触发舵机动作。
摘要由CSDN通过智能技术生成

最近看到一个开源的贪吃机器人,觉得挺好玩的,适合给儿子做为玩具,所以DIY了一个。由于作者已经提供3D打印文件以及源代码,所以DIY可以说毫无难度,但是3D打印还是挺耗费时间。

3D打印

打印文件下载:
https://www.thingiverse.com/thing:2824451

打印后总共7个元件,其中几个大元件打印比较耗时,最终实物如图:
在这里插入图片描述
#控制电路
机器人的控制原理相对简单,就是用一个红外距离传感器探测前方是否有物体,如果探测到物体,测触发舵机运动。所以需要红外传感器的数据采集以及舵机的控制。
红外距离传感器采用的是夏普GP2Y0A21YK0F,接上杜邦线,如下图:
在这里插入图片描述
舵机采用的是SG90,接上杜邦线,如下图:
在这里插入图片描述
控制器采用的是最便宜的andriod nano.
控制连接图如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
贪吃蛇是一款经典的游戏,下面是一个简单的贪吃蛇实现: ```re # 贪吃蛇实现 # author: AI # 定义方向常量 LEFT = 1 UP = 2 RIGHT = 3 DOWN = 4 # 定义初始状态 snake = [(0, 0), (0, 1), (0, 2)] direction = RIGHT # 定义移动函数 def move(): global snake, direction # 计算蛇头位置 head = snake[-1] if direction == LEFT: new_head = (head[0], head[1]-1) elif direction == UP: new_head = (head[0]-1, head[1]) elif direction == RIGHT: new_head = (head[0], head[1]+1) else: new_head = (head[0]+1, head[1]) # 向蛇尾添加新的蛇头 snake.append(new_head) # 删除蛇尾 snake.pop(0) # 定义更新方向函数 def update_direction(new_direction): global direction # 判断是否可以改变方向 if new_direction == LEFT and direction != RIGHT: direction = new_direction elif new_direction == UP and direction != DOWN: direction = new_direction elif new_direction == RIGHT and direction != LEFT: direction = new_direction elif new_direction == DOWN and direction != UP: direction = new_direction # 开始游戏 while True: # 打印当前状态 for i in range(10): for j in range(10): if (i, j) in snake: print('o', end='') else: print('.', end='') print('') # 获取用户输入 user_input = input('请输入方向 (L/U/R/D): ') # 更新方向 if user_input == 'L': update_direction(LEFT) elif user_input == 'U': update_direction(UP) elif user_input == 'R': update_direction(RIGHT) elif user_input == 'D': update_direction(DOWN) # 移动蛇 move() ``` 这段代码使用 Python 语言编写,实现了一个简单的贪吃蛇游戏。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值