]]>
Wednesday Meetup – innovati came and visited us..
February 23rd, 2012 § 0 comments § permalink
Photos from RoboRace
September 26th, 2011 § 0 comments § permalink
Roboracing Competition – 2011/07/10
July 11th, 2011 § 0 comments § permalink
比赛赢家: Nelson Zhang (自主瓦力) and Michael Liao (遥控坦克)非常感谢 盛大创新院 赞助了2台电子书做为奖品!
感谢参赛者们的努力,你们是最棒的! 感谢盛大创新院慷慨的赞助! 感谢 TimeOut 杂志 报道这次的活动!感谢DFRobot 和 RoboticFans 参与(尤其是叶琛和Rocky)这次活动的筹备!感谢新单位帮忙做宣传!感谢昨天来围观的朋友们! 感谢那些没办法过来但是给我们精神支持的朋友们!感谢Andi 设计制作这次的活动海报与传单!感谢Paul 赞助海报印刷!感谢Bindy 帮忙翻译和贩卖饮料!感谢Michael 捐赠赢得的电子书作为下次的奖品和请参赛者们和饮料!感谢John 帮忙活动的筹备!感谢Airie 帮忙在人人网上做宣传!感谢旻琳负责整个活动的宣传、协调与筹备!感谢我们零距离家长论坛的j家长和孩子们的参观!
下一次的比赛预计会在8月底举办,敬请期待!
]]>Roboracing Competition
July 8th, 2011 § 0 comments § permalink
欢迎有兴趣的朋友来围观!这里报名。 比赛分为两个部分: * 自动控制组 * 遥控组 ==>比赛细则<== 如果你的机器车也想参加比赛,请写邮件到: [email protected] 有兴趣赞助这个比赛请写邮件到:[email protected] 这里有上次的车赛花絮. 已报名的队伍: Team 1: Lauren Pan (Toy car modification robot) Team 2: Barry Xu (DIY robot) Team 3: Daniel (2WD Mobile robot kit) Team 4: Zhang Chen (Andriod control HCR) Team 5: Jiang Gui Long/Wu Tao/Zhang Jie ( Android Control HCR) Team 6: Rockets (Tank mobile robot) Team 7: Unknown (LEGO mobile robot) Team 8: Ricky Ye (HCR robot) Team 9: Ricky Ng-Adam (Autonomous robot toy car – ART) Team 10: Lutz Michaelis (Autonomous Beetleduino) Team 11: Paul Adams (Hoverbot Hubert) Team 12: Nelson Zhang (Autonomous Wall-E) Team 13: Lionello Lunesu (LEGO mobile robot) Team 14: David Li (Soccerbot) ]]>
Android & Robots
June 8th, 2011 § 1 comment § permalink
Android Open Accessory Development Kit.
Android3.1平台(也向下移植到了Android2.3.4)引进了Android Open Accessory support,这使得外部USB硬件(An Android USB accessory)能够与Android设备在一个特殊的“accessory”模式下互相通信。当一个Android设备在这个accessory模式下时,接入的硬件作为一个USB host(为总线供电以及枚举设备),而Android设备作为一个USB设备来使用。Android USB附件是特别设计的,用以附加在支持Android平台的硬件设备上并且遵守一个简单的附件协议(Android accessory protocol)使他们能够侦测支持附件模式的Android硬件设备。工作坊是每周举行的(目前是英语教学)。我们将探索包括开发Android软件部分和单片机部分,涉及到的方面包括机器人的机械,电子以及软件工程学。 特别的,我们将一起研究那些兼容ADK的硬件开发板,比如Google IOIO board和Seeedstudio提供的新硬件。 付费的新车间会员可以免费参加。非会员需要支付50元/次。 更多的信息请查看“Android & Robots” wiki. 不要忘了做好准备工作以及加入我们的[email protected] mailing list!注意,这是一个需要大家合作的讨论会,我们希望每个人都能积极的参与和贡献自己的力量。 ]]>
HCR Roboracing
May 25th, 2011 § 2 comments § permalink
Insect Bot Workshop [2]
May 9th, 2011 § 1 comment § permalink
周日的虫虫工作坊有13人参与,10个小朋友加上家长,很热闹,很愉快的周日下午!
]]>
Adding servo to RC car
May 6th, 2011 § 0 comments § permalink
遥控小车的改造 May 3rd, 2011
今天完成了遥控车的改造,这是自主控制的第一步。这辆车是在淘宝上买的,结构很简单,控制很简陋。方向就是将电机打死,这时候电流会非常大,而且对于将来的自主移动的精细控制带来不利因素。所以很早就想把它改成舵机控制的了,下面就是整个改造的过程。
这就是需要改造的部分。
先将需要改造的部分画下来,便于设计框架结构。我不是机械出身的,所以就画个大概吧。
结构图完成
在图纸上设计新的结构
根据设计切割材料
最后完成的样子,由于是临时电路,也就没固定,看上去有点像垃圾车-_-b
改造部分的特写
再来一张
这些只是机械部份,然后就是控制部份。由于舵机能够转动的角度范围到180度,而该车的转向轮仅能转动在30-40度之间。同时,自主移动机器人目标是在Arduino上面开发。所以我就一步到位,先用Arduino读取天地飞的pwm信号,然后经过转换,输出新的pwm信号给舵机,这样就不会因为卡住而损坏舵机了。
最后效果如下
http://v.youku.com/v_show/id_XMjYzOTc2NzA4.html
使用的程序非常简单,如下:
#include <Servo.h> //Author: HE Qichen //Date: 2011-5-3 //Website: http://gaishi.vicp.net //Email: heqichen(a)gaishi.vicp.net Servo directionServo; void setup() { pinMode(2, INPUT); directionServo.attach(3); } void loop() { int t, a; t = pulseIn(2, HIGH); a = map(t, 1000, 2000, 65, 115); directionServo.write(a); }]]>
Hacking Embedream Car
May 6th, 2011 § 0 comments § permalink
嵌入之梦-圆梦小车开发 May 1st, 2011
今天看到一台嵌入之梦的小车,但是上电之后发了疯似的乱跑,所以刷之。但新车间却没有网络,没办法,自己一点一点试。。结果如下
CT1 接受pwm,控制速度 CT2 前进控制信号,高电位转动 CT3 后退控制信号,高电位转动
但是由于小车上的UNO与我的Ubuntu连接有问题,貌似只有Windows是好的,Mac OS有时也会出问题。所以最后车上改用了Mega 1280。
但是又发现一个问题,就是Arduino使用USB供电的时候很正常,然而,使用车上接出来的5V电源时,程序就会混乱,完全没有一点规律。猜测可能是由于电机转动导致整个系统的电压下降,无法提供足够的电压给Arduino的板子上。这大概也是之前uno不会发疯的原因。没办法,在小车上再接一块9V层叠式电池,作为Arduino的电源。最后终于行了。
后面程序的作用是往前走,遇到前方有物体是后退,打弯,然后继续往前,一个简单的壁障程序。没有用到速度控制。下面就是这个小车最后的样子,手机拍的,将就看吧
左侧照
右侧照
再来一张
http://v.youku.com/v_show/id_XMjYzMzY0NzA0.html用到的程序就是下面的
//Author: HE Qichen //Email: heqichen(a)gaishi.vicp.net //Website: http://gaishi.vicp.net //Date: 2011-5-1 int status; #define LEFT_SPEED 6 #define LEFT_FORWARD 7 #define LEFT_BACKWARD 8 #define RIGHT_SPEED 10 #define RIGHT_FORWARD 11 #define RIGHT_BACKWARD 12 #define ULTRASONIC_ECHO 3 #define ULTRASONIC_TRIG 4 #define NORMAL_SPEED 100 #define STOP_SPEED 0 void setup() { Serial.begin(9600); setupMove(); setupUltrasonic(); } void loop() { unsigned int d; moveForward(); d = readDistance(); Serial.println(d, DEC); if (d < 700) { moveBackward(); delay(500); turnLeft(); delay(200); } } void moveForward() { analogWrite(LEFT_SPEED, NORMAL_SPEED); digitalWrite(LEFT_BACKWARD, LOW); digitalWrite(LEFT_FORWARD, HIGH); analogWrite(RIGHT_SPEED, NORMAL_SPEED); digitalWrite(RIGHT_BACKWARD, LOW); digitalWrite(RIGHT_FORWARD, HIGH); } void moveBackward() { analogWrite(LEFT_SPEED, NORMAL_SPEED); digitalWrite(LEFT_BACKWARD, HIGH); digitalWrite(LEFT_FORWARD, LOW); analogWrite(RIGHT_SPEED, NORMAL_SPEED); digitalWrite(RIGHT_BACKWARD, HIGH); digitalWrite(RIGHT_FORWARD, LOW); } void turnLeft() { analogWrite(LEFT_SPEED, NORMAL_SPEED); digitalWrite(LEFT_BACKWARD, HIGH); digitalWrite(LEFT_FORWARD, LOW); analogWrite(RIGHT_SPEED, NORMAL_SPEED); digitalWrite(RIGHT_BACKWARD, LOW); digitalWrite(RIGHT_FORWARD, HIGH); } void turnRight() { analogWrite(LEFT_SPEED, NORMAL_SPEED); digitalWrite(LEFT_BACKWARD, LOW); digitalWrite(LEFT_FORWARD, HIGH); analogWrite(RIGHT_SPEED, NORMAL_SPEED); digitalWrite(RIGHT_BACKWARD, HIGH); digitalWrite(RIGHT_FORWARD, LOW); } void moveStop() { analogWrite(LEFT_SPEED, STOP_SPEED); digitalWrite(LEFT_BACKWARD, LOW); digitalWrite(LEFT_FORWARD, LOW); analogWrite(RIGHT_SPEED, STOP_SPEED); digitalWrite(RIGHT_BACKWARD, LOW); digitalWrite(RIGHT_FORWARD, LOW); } void setupMove() { pinMode(LEFT_SPEED, OUTPUT); pinMode(LEFT_FORWARD, OUTPUT); pinMode(LEFT_BACKWARD, OUTPUT); pinMode(RIGHT_SPEED, OUTPUT); pinMode(RIGHT_FORWARD, OUTPUT); pinMode(RIGHT_BACKWARD, OUTPUT); analogWrite(LEFT_SPEED, STOP_SPEED); digitalWrite(LEFT_FORWARD, LOW); digitalWrite(LEFT_BACKWARD, LOW); analogWrite(RIGHT_SPEED, STOP_SPEED); digitalWrite(RIGHT_FORWARD, LOW); digitalWrite(RIGHT_BACKWARD, LOW); } unsigned int readDistance() { int duration; digitalWrite(ULTRASONIC_TRIG, LOW); delayMicroseconds(2); digitalWrite(ULTRASONIC_TRIG, HIGH); delayMicroseconds(5); digitalWrite(ULTRASONIC_TRIG, LOW); // The same pin is used to read the signal from the PING))): a HIGH // pulse whose duration is the time (in microseconds) from the sending // of the ping to the reception of its echo off of an object. duration = pulseIn(ULTRASONIC_ECHO, HIGH); return duration; } void setupUltrasonic() { pinMode(ULTRASONIC_TRIG, OUTPUT); pinMode(ULTRASONIC_ECHO, INPUT); digitalWrite(ULTRASONIC_TRIG, LOW); }]]>
Autonomous RC Car
May 6th, 2011 § 0 comments § permalink
自主机器人项目
我想通过改造一辆遥控小车,造出个自主移动机器人,遥控车就是下面这张图片中的车。
并且希望通过大家的智慧,把这个机器人做好,比如说,想在上面放一个无线摄像头;比如说,在上面放一个机械手臂;比如说,在这上面装一个超声测距模块……我将集中大家的智慧,集合到这个小车上面,^_^
http://v.youku.com/v_show/id_XMjYyMzQ4OTYw.html如果你有想法,请告诉我 hacker(a)gaishi.vicp.net
]]>