2011年03月 文档列表

无线供电模块

前几天买的无线供电模块到手了。很久以前计划在悬浮的陀螺里面埋进小电机,然后通过无线给它供电,这样就可以悬浮又旋转了。

之前也想过在陀螺里埋铜丝,然后用旋转磁场来控制旋转(鼠笼电机的原理),可惜没有成功。后来无意中发现重心不平衡的陀螺在平衡控制电路下自己就能旋转。不过这都是旁门左道,相信老顽童同学很快就能实现他的飞轮电池技术,先占座学习下。

除了驱动电机之外,暂时还没想好用这个做点什么,不过和磁悬浮配合应该能做出很酷的产品吧。今天简单测试了一下,距离2cm左右,输入电压9V,输出电压大概3V左右。穿透有机玻璃,纸张等没有问题,不能穿透金属。效率不太高,我的电源一会儿功夫变得滚烫。

无线供电

这个图里中间的分隔物是2cm厚的有机玻璃。

下面这个是国外某公司的产品:

越大的线圈应该耦合越容易,损失越小,所以这个产品应该还是可以实用的。

Arduino系列教程之 – PWM的秘密(上)

今天是3.8妇女节,我也沾了点光,提前开溜了(公司的mm们都放假了,大家工作没动力啊)。呵呵,在此祝福所有的美女们节日快乐!

前几天在微博上看到了flamingoeda小盆友提到了PWM,毕竟微博只能有一百多字,没法详细的介绍清楚,特此补充一下。

PWM是啥玩意儿?
PWM是“怕玩命”的缩写,英文写法是“Pulse-width modulation”,也有些外行人士把它翻译成“脉冲宽度调制”。Arduino有很多种版本,这篇文章里是以ATmega168为例,有用过其他型号的兄弟请补充。
对于没有听说过PWM的同学,请先参考一下我的另一篇博客Arduino的模拟输入和输出

PWM是用占空比不同的方波,来模拟“模拟输出”的一种方式。靠,这个太拗口了,简而言之就是电脑只会输出0和1,那么想输出0.5怎么办呢?于是输出01010101….,平均之后的效果就是0.5了。早这么说就了然了嘛。

pwm

PWM有神马作用?
举几个例子说明:
1.通过简单的滤波电路,就可以生成真正的模拟输出量;
2.控制灯光亮度,调节电机转速;请注意这和1不是重复的,因为不需要滤波就可以实现
3.控制舵机角度,这个请参考 Arduino开发板实验三:舵机控制
4.输出信号,例如接喇叭的时候可以发声

如何产生PWM?
Arduino有三种方式可以产生PWM。第一种:

用analogWrite(pin, val)命令
其中pin是腿的编号,传说中只能用3,5,6,9,10,11这几条;val是0~255的整数值,对应电压从0到+5V。注意,那几个脚的编号,指的是ATmega168的pin编号,Arduino的板子会用这几个管脚支持更多路的PWM输出,例如我的Arduino Mega168就支持0~13共14个PWM输出。
具体的使用可以看下面的示例代码:

int pin = 8; //0~13

void setup()
{
    pinMode(pin, OUTPUT);
}   

void loop()
{
    analogWrite(pin, 128);
    delay(500);
}

这种方式产生的方波周期大概是2ms左右(490Hz),不需要占用额外的cpu命令时间。据说99%的同学看到这里就可以下课了,技术宅请继续看第二种方式:

手动用代码实现PWM

int pin = 38;  //这个可以随意点

void setup()
{
    pinMode(pin, OUTPUT);
} 

void loop()
{
  digitalWrite(pin, HIGH);
  delayMicroseconds(100);
  digitalWrite(pin, LOW);
  delayMicroseconds(1000 - 100);
}

上面这段代码会产生一个PWM=0.1的,周期为1ms的方波(1000Hz),这种方式的优缺点很明显:
1,PWM的比例可以更精确;
2,周期和频率可控制;
3,所有的pin脚都可以输出,不局限于那几个脚;
4,缺点:CPU干不了其他事情了;
好吧,缺点只有一个,却非常致命,以至于上面这些基本都是废话。但是对于周期比较大的PWM,可以用算法模拟CPU的多任务系统,从而在输出PWM的同时做点兼职。

那么能不能既调节PWM的频率和周期,又不要占用额外的CPU时间呢?请看第三种方式:

使用PWM寄存器

ATmega168有三个时钟,名字分别叫Timer0, Timer1和Timer2。每个时钟都使用了两个寄存器,其中一个是设定值例如128,另一个则从0开始不断递增,到1024之后溢出回到0。那么当两个值相同的时候,Timer就会把某个管脚反相。不同的Timer之间频率是相同的,占空比则根据设置值不同。
占空比有了,那么周期怎么控制呢?有一种叫做时钟控制器的东东,这个控制器可以设置周期为CPU周期的某个倍数,例如1,8,64,256,1024等等,Timer0和Timer1共用一个控制器,Timer2和它们是独立的。

今天先写这些,明天继续…..
本文内容基本都是参考自Arduino官网教程,心急的同学请看英文原版:
http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM

基于微分电路的上拉式磁悬浮

这是一个基于微分电路的上拉式磁悬浮。它不使用单片机,仅靠电路实现上拉式磁悬浮的平衡。而且作者把它做成了“便携式”,用一个透明文具盒+电池就装下了。可以随身携带,随时演示,简直就是工科宅男的泡妞利器!

原文的图片链接都已经失效了,还好我这里曾经下载保存过

废话不多说了,以下是原文攻略部分。

$$$$$$$$$$$$$$$$$$$$$华丽丽的昏鸽线$$$$$$$$$$$$$$$$$$$$

未组装阶段的通电悬浮图:

再来一张:

第三张

开始组装

它的心脏:比例微分控制电路

电路是由如下元件组成,一般家电维修处都能买到,其中运放,我用的是LM324 是因为我手头现有这个,其实用2 运放就行,线圈是自己饶的,漆包线挺贵的。

最终组装完成的视频:
http://www.56.com/u45/v_Mjk3NjY0NzQ.html

自制要点:被悬浮的必须是磁力强体积小的磁铁,推荐使用球形钕铁硼磁铁,非球形也行。漆包线很贵,线圈不必绕那么多圈,绕到我这个的一半就可以达到和我这个一样的磁场了,但是绕得越多,越省电. 两个可变电阻的阻值必须调试到合适才能悬浮且稳定. 霍尔元件的位置应该处于线圈中心。

霍尔元件在很多家电上都有用到,去家电维修部买就可以了,可以买3503,也可以买别的型号,但是要注意买输出线形量的,不是开关量的。

那么我就整体原理解释一下,如果你水平高,你可以做一个,如果水平不行,我解释了你起码能知道是怎么回事: 小球在空中受重力,当小球处于某个高度时,电路使重力和磁力平衡;当小球高于这个高度时,电路使线圈磁力小于重力,从而使小球有下落趋势;反之,低于这个高度,电路使线圈磁力增大,小球就有上升趋势.从而小球能在一定的扰动范围内保持平衡。

其实学过控制的人可以看出电路中还有微分控制,就是那个电容.其实这个电路没有微分控制也能工作,小球稳定性会稍差些.如果不懂控制,完全可以按你理解的不加电容来做.另外线圈挡板的铝板也起到类似于微分控制的作用,抑制震荡.

(本段系另一人回复,在帖中23楼,非作者叙述)
我说说我的理解:小球的轻微扰动会导致空间磁场变化,霍尔元件把这个变化感应成线性电位信号反馈。 两个500K 电阻的分压可以让运放输出有一个直流偏压, 防止三极管工作在截至区(调节静态工作点)。 200K 电位器的作用是调节霍尔元件信号的平衡位置, 500K 电位器的作用是调节控制电路的灵敏度(或者是调节前级放大倍数防止后面的放大电路饱和), 两级运放间RC滤波器是滤除纹波
让线圈的磁场更平稳。霍尔元件的反馈信号被两级运放和三极管放大了很多倍, 只要磁场一有扰动,就会驱动线圈电流变化让磁场趋于恒定。

23楼完全正解.
不过电容不是为了滤除波纹,而是微分控制,也就是根据小球的速度来改变线圈电流的大小. 如果不加电容,就只根据小球位置来改变了. 这种球形磁铁可以在淘宝上买到,搜“球形钕铁硼”即可,目前全国只此一家,所以是2元/个的“垄断价格”,不用球形的话,很多城市的卖电机的地方都有卖钕铁硼。

我又在土豆上传了一次视频:
http://www.tudou.com/programs/view/KT7KLCwYl2g/

(86 楼作者的总结)
“磁悬浮”现在已经变成家喻户晓的名词。但现在大家熟悉的磁悬浮都是利用磁场的斥力把铁磁体向上方托起,磁悬浮列车就属于这一种。可是你见过凌空悬着的“磁悬挂”吗?我设计制作了一个不算复杂的电子装置,就能演示这种不寻常的科学现象。

材 料
R1——R6均为1/4W碳膜电阻,R7、R8为1/4W微调电位器。
C1:1uF无极性电解电容。
IC1:四运算放大器集成块LM324。
VT1:9013。
霍尔元件:3503。霍尔元件被广泛用在家电上,电子市场或家电维修部都能买到,可以买3503,也可以用别的型号,但购买时须说明是线性输出的,错买了开关型的不能用。在电路图中没画出霍尔元件的接法,应该把有字的一端朝向自己,三个管脚从左到右依次接电源正极、接地、 接电路中的信号输入端。
悬浮小磁球为高强磁性的钕铁硼磁钢小球,普通磁铁的磁性不够,不能用。钕铁硼磁钢小球可以在淘宝网上购买(搜索“球形钕铁硼”),非球形的钕铁硼小磁钢也能用,就是演示的视觉效果差点。

制 作
1. 电路部分的元件不多,我自制时采取“空间连接”,各接点用电烙铁焊牢。如果不习惯,则把元器件焊在附上的印刷电路板上。
2. 制作电磁线圈。找一根内径8 毫米的塑料圆珠笔管,切割1.5 厘米长一段做为线圈芯管,用薄铝片(绝对不能用铁片)剪两块外径2 厘米的挡板,分别在中心部位钻一个与笔管内径一样大的孔,用AB 胶把两个档板粘牢在芯管两端。把长度为15 — 20 米、线径为0.2 毫米的漆包线密绕在这个骨架上。圈数绕得更多些就更省电,但是电磁力不会明显提高。
线圈做好后试验一下:接上大约5 伏直流电,在小磁球上方1 厘米之外应该能把它吸上来。最后在线圈芯管中心处插入一个霍尔元件,使霍尔元件上的平面与线圈挡板平行。在线圈端面前加一块铝片,铝片内形成的涡流能够使小磁球悬浮更加平稳,其作用类似于电容的微分控制。
3. 将包括5号电池夹(4节)和开关在内的各部分组装在一个长条形的半敞开盒子里,今后调节电位器就比较方便。

调试和演示
把磁钢小球放在线圈下5 毫米处。先把R8 调到最大,从正到负调节R7,直至小磁球离地为止。如果它一直不能离地,则应把线圈反接。
调小R8,使磁钢小球稳定;然后边观察边微调R7、R8,最终使小球能稳定悬空漂浮在线圈下1 厘米处。
在演示时,可以轻轻晃动装置,用纸、塑料瓶等从小球与线圈之间穿过,甚至用手指轻轻触碰小球,它都能保持悬浮状态。

(82 楼问) 不知道用这个线圈行不行.700 欧左右
作者:82 楼那位loonglog ,你的线圈太细了,圈数太多了。

(83 楼问) 晕.我的做好了就是在电磁铁下面乱跳.磁铁必须是球形的吗?
作者:83 楼的,不必,近似即可,例如圆柱也可。

盗梦陀螺攻略6- 陀螺制作(大结局)

之前的几篇磁悬浮攻略,引来了一位业内高手 — 老顽童同学。该同学提出了很多意见(虽然看不太懂,但是从众多的专业术语看来,应该是比较靠谱滴)。庆幸我之前已经把电路部分的攻略发完,不然都不好意思往下写了。圈圈妈说的对,电子这个行业我还没迈过门槛哪。有兴趣的同学可以去围观老顽童的飞轮电机计划

这篇攻略是盗梦陀螺的完结篇,好多人对这个金属质感的陀螺很有兴趣,希望了解它的材质和加工过程,下面就来揭晓谜底。

首先,原材料:三块钕铁硼磁铁,其中最大的是环形,另外一大一小两个圆片;一元硬币;一大一小两个乐高齿轮;一个乐高轴:

简单的大小排序组合,磁铁都在下面,乐高件都在上面,这样可以避免头重脚轻,用热胶粘上:

绕上铜丝,我的本意是弄成一个鼠笼,让它旋转的,最后没起作用:
铜丝绕成的“鼠笼”

在外面裹上纱布,这个是为了抹石膏方便,中空的结构可以让陀螺更轻。这个创意来源于10年前的一次骨折,北医三院的大夫教我的:
纱布

石膏来啦,广告贴,用医用石膏的最大好处是:不会被圈圈的保护者们赶出门去。
石膏这个东西很神奇,前一分钟还像豆浆一样稀,下一分钟就像牙膏似的,再一分钟就硬了:
牙医专用石膏

抹上石膏,好恶心的一大坨:
未经处理的陀螺

用小刀仔细刮平:
人肉加工,用小刀刮平

指甲油来啦,我选了古铜色,金属效果特别好。因为在家刷指甲油有味道,我带到公司刷的,顺便挑了一个手指头也测试了下。嗯,疑似有男士对我猛抛媚眼 :)
古铜色指甲油
注: 这个图是网上找的,不是我的手。

见证奇迹的时刻到了,看看最终成品:
最终的成品

注:这个有如熊掌的肉忽忽的手才是我的。

磁悬浮的攻略到此就结束了。最近很忙,因为圈圈的原因,也把电钻电烙铁之类的东西都收了,所以短期内不一定有新制作问世。有空的时候打算研究研究Android手机,Arduino板子和NXT的小功能,欢迎大家关注和讨论。顺便发个小广告,欢迎大家在新浪微薄上加我为好友:@动力老男孩

查看盗梦陀螺的其他几篇攻略点这里