REMAKE再造 挑战赛已经进行到了第三轮,前两轮的主题分别复刻经典和超越经典。
第一轮文章链接:https://makelog.dfrobot.com.cn/article-309740.html
第二轮文章链接:https://makelog.dfrobot.com.cn/article-309907.html
第三轮主题是融合创新,“以融合创新为主题,从跨领域融合、多功能融合等角度进行创作,如艺术与科技、音乐与绘画、游戏与教育等跨领域融合,如扫地机器人+小爱音箱 = 移动小管家等等。” 有点难啊,尤其是跨领域融合,没有意料到的。
“游戏与教育”?是啊,这是一个很好的结合点。爱玩是孩子的天性,孩子看待作品的角度和辅导老师们应该是不同的。一眼望去,参赛作品 or 玩具?我倒真的希望,孩子们把这些参赛作品首先看成玩具,关注点在于好不好玩,而隐藏在作品的背后的技术和创新,交给孩子们在玩的过程中慢慢地发掘吧。
说到游戏,主机厂商是绕不开的。最具代表性的游戏手柄,是人机对话优秀的首选工具。PS2手柄在创客圈中就应用很广,它有丰富的教程,功能齐全的扩展库,低廉的价格。缺点就是接受端体积庞大,兼容品良莠不一,和现款热门Xbox手柄(白色上)和PS4手柄(黑色下)功能手感无法相比。
我们也要遥控SMARS。PS4手柄支持蓝牙的,Github有arduino的库,理想方案就是它和esp32通过蓝牙连接遥控了。但缺点也很多,首先关于PS4手柄参考资料很少,学习难度比较大,还有更重要的,一个原装PS4手柄超过300元,成本太高了,据称只有正版才能正常连接。
此路不通,再择佳径。作为创客,DIY是荣耀。我们自制一个手柄吧。简单的一个电位器摇杆,两个按键,仿复古红白机手柄的外观,只是将十字方向键换成模拟量的摇杆。
使用solidworks建模,制作外壳。
用一个psp上的小型电位器摇杆,背面用螺丝固定在手柄上盖上。
按键帽设计成内外两部分,穿过遥控器外壳扣在一起。上下有一定活动余量,通过它按压微动开关触发。
这里无线通讯模块选用的HC-12 433MHz接收发射1km串口通信透传模块。它比蓝牙使用简单,稳定,还有长达1000米的使用距离。无需配对,可以1对多通讯。
这种小型摇杆电位器淘宝已经下架没有相同产品再售,但有类似商品,改一下线应该一样使用。
导线直接焊在Nano板上,连接好所有器件,一股脑装进肚子里。
组装完毕的样子,红白双色外观,还不错吧?
遥控器做好了,开始弄小车,又有新主意了。
想到手里有几个小巧的麦克纳姆轮。这玩意和SMARS也算跨界啊。SMARS以履带为标志,小巧的车身内置两颗N20电机,分别驱动左右两条履带。麦轮可是要4个一套一起工作,每个轮子都要独立工作,那么需要4颗电机驱动,能装下么?
继续该改改,将小车立面都削减掉一部分,终于装进了4颗电机,比较一下左右两图。
这次4个电机,需要两个mx1508电机驱动板了,更多的连接线,狭小头疼的空间内一点点弄好,在上面扣上UNO主控板遮羞。
装上麦克纳姆轮,合影。
编程调试
麦轮控制原理(部分)
使用左手的摇杆控制小车前后左右,麦轮特性,无需专向即可左右移动。两个按键控制原地转动。
/****************
smars小车遥控发送端程序
阿风
2021.04.21
*/
int XPin = A6; // select the input pin for the potentiometer
int YPin = A5; // select the input pin for the potentiometer
int APin = A3; // select the input pin for the potentiometer
int BPin = A4; // select the input pin for the potentiometer
int ledPin = 13; // select the pin for the LED
int X = 0; // variable to store the value coming from the sensor
int Y = 0; // variable to store the value coming from the sensor
int A = 0; // variable to store the value coming from the sensor
int B = 0; // variable to store the value coming from the sensor
const int buttonPin = 2; // the number of the pushbutton pin
void setup() {
// declare the ledPin as an OUTPUT:
pinMode(ledPin, OUTPUT);
pinMode(APin, INPUT);
pinMode(BPin, INPUT);
Serial.begin(9600); //设置串口波特率9600
Serial.write(0xA0);
delay(1000);
}
void loop() {
X = analogRead(XPin);
Y = analogRead(YPin);
A = digitalRead(A3);
B = digitalRead(A4);
delay(10);
if (X>400&&X<600)
{
if (Y>600)
{
Serial.write(0xA1); //forword
delay(50);
}
else if (Y<500)
{
Serial.write(0xA2); //backword
delay(50);
}
}
else
{
if (X<400)
{
Serial.write(0xA3); //goleft
delay(50);
}
else
{
Serial.write(0xA4); //goright
delay(50);
}
}
if (A==0)
{
Serial.write(0xA9); //turnleft
delay(50);
}
if (B==0)
{
Serial.write(0xAA); //turnright
delay(50);
}
Serial.write(0xA0);
}
激动人心的实地测试来了,很灵活,速度很快。希望有小朋友们通过这个视频对能横着走的小车产生兴趣,进而了解到麦克纳姆轮,最好再到arduino电子控制,或者无线通讯,或者对3D打印来了兴趣。就算这些都暂时没有,那么尽情享受游戏的快乐吧,感受技术带给人们的便捷与欢愉。
REMAKE再造 已经是最后一轮了。今天我们就要结束,在结束之前,我觉得非常有必要介绍下SMARS小车的原作者,向其致敬。
SMARS
SMARS was created by Kevin Thomas ( Click here for his Thingiverse profile ), who is a student from Switzerland studing management engineering. Kevin also has a page on cult3d https://cults3d.com/en/users/Tuitxy/creations.
SMARS由凯文·托马斯(Kevin Thomas)创建,他来自瑞士,学习管理工程学,他是凯文·托马斯(点击此处查看其Thingiverse个人资料)。凯文(Kevin)在cult3d上也有一个页面https://cults3d.com/en/users/Tuitxy/creations。
还有 Kevin McAleer。 他是SMARS小车最重要的推广者。https://www.smarsfan.com/网站是他维护的,此外他在油管有频道,视频教大家使用开源软硬件制作作品。
希望有更多的爱好者一起加入进来,对SMARS改造,更新。也希望更多优秀的开源作品中有来自中国创客圈的贡献。
附件
杨添淮2023.01.09
牛
杨添淮2023.01.09
学习一下
小成2021.09.13
电脑端登录也不能下载 链接有问题https://makelog.dfrobot.com.cn/article-310048.html?code=6ed00f39d5292cf686a91be1877b782d
小成2021.08.26
附件不能下载?
幸运阿风2021.09.10
电脑端登陆可以下载
lemontree20002021.08.23
学习一下
虾虾^0^2021.08.12
厉害