用一块Arduino输出多路PWM
由 动力老男孩 发表于 2012/07/17 22:49:47【经wwwtiger同学提醒,关于Arduino原生PWM的频率,我之前的理解是错的,应该是490Hz左右,特此更正】
周末有朋友来家里玩,看到了放在角落里的那个大的四轴飞行器。拿下来看了看,发现上面已经落满了灰尘。应该有几个月没动了,当时写的攻略目录也好久没更新了。这段时间打算抽空陆陆续续把这个页面里的目录内容都补齐,免得成为烂尾工程。可惜实验还没有成功,所以不能算是经验,各位兄弟权当教训看吧
四轴飞行器最终的控制手段,就是分别调节4个电机的转速。对于常见的无刷电机,一般通过高电平在0.9ms~2.1ms左右的PWM来控制转速。这就涉及到如何用arduino输出多路PWM的问题,在Arduino中,一般可以通过下面这些方式来输出PWM方波:
1. 用原生的PWM输出功能
把pinMode定义为输出,然后用analogWrite就可以输出PWM。以Arduino Mega 1280为例,它有14路PWM输出。analogWrite的参数范围是0~255,对应的是0~2ms的高电平。
一般情况下,原生的PWM频率固定为490Hz,通过一些参数的修改,可以提高PWM频率,但是参数范围只能是0~255。
int pin = 8; //0~13 void setup() { pinMode(pin, OUTPUT); } void loop() { analogWrite(pin, 128); delay(500); }
2. 通过普通的输出管脚手动控制PWM
PWM归根结底无非就是输出0,1序列的方波,所以我们还可以简单的通过digitalWrite和delay来生成PWM方波。
这种方式的特点是可以非常精确的控制高电平时间和PWM周期,缺点是CPU时间不好充分利用,多路时编程有点复杂。
void loop() { long t0 = micros(); //记录进入loop的时间 double T = 20000; //一个周期的微秒值 double len = 900; //高电平时间 for(int i = 0; i < 4; i++) digitalWrite(pins[i], HIGH); delayMicroseconds(len); for(int i = 0; i < 4; i++) digitalWrite(pins[i], LOW); /* *在这里干别的事情 */ int leftMs = (int) (t0 + T - micros()); //剩余时间 if(leftMs < 0 ) leftMs = 0; //万一超出周期,只能立刻中止 delayMicroseconds(leftMs); }
3. 用servo库
Servo库是Arduino用来控制伺服电机的,印象中是使用了内部中断来触发的,所以主程序只管干自己的事情,时间到了PWM就会自动触发。
它默认的频率是50Hz,但是可以在头文件中修改。文件位置是arduino-0023\libraries\Servo.h,修改下面这行可以把PWM频率升到400Hz:
#define REFRESH_INTERVAL 2500
具体的细节在之前的一篇小结里提到了:Arduino自带的Servo库小实验
先记录这些,希望在把全部的“教训”写完之前,能有空把四轴飞起来
很有实用价值,多谢!
不知动力哥是否把你的四轴给曾经做成过的人看过,让他们亲眼看一看说不定就能很快找出问题所在。北京藏龙卧虎,这样的人肯定有吧
嗯,北京这里有好多朋友。比如wnq,不过约了两次都没见上面
我的调试环境太不理想,家里杂物太多,小朋友又到了到处乱翻的阶段,所以都装箱收起来了……
用一块Arduino输出多路PWM,这个题目跟文章内容好像不怎么搭边吧,还是说题目只是一个疑问?不知道能否实现。
我的理解是,产生多路PWM,这多路PWM应该有一个比例关系的。如果产生没比例关系的多路PWM,可能比较难实现吧。
这个问题也困扰我,如果老男孩解决了,麻烦共享一下你的方法啊。不吝赐教
题外话:
一方面DIY,一方面工作,一方面照顾小孩。还真不容易啊。佩服老男孩这样的人!
这多路PWM的周期是相同的,但是占空比不同。
如果想输出不同周期的PWM,貌似确实有点麻烦
最近工作忙了,来看的多,写的少了。嘿嘿
加上昨天才从张家界回来。
动力兄 不要放弃啊,继续做下去啊!有时候看你的博客就能激发斗志呢
小四轴难度低啊。。。。目测用薄的万能版都有戏。。。。现在已经画好电路了。。。。马上准备开始印板子。。。。你们有没有要的。。。邮费自理
哈,厉害,你是打算连那些小芯片都自己焊吗?
936的烙铁换一个平头的刀然后再来一个热风枪就ok了。。。其实还可以用烤箱。。。新车间这边来了个人准备出烤箱套件。。。。
神马样的板子???需要焊哪些?空PCB?额~~这个 哎我焊接技术不行啊
不然飞不起来//焊接其实不难。。。。焊了300+ 0603led后表示基本掌握贴片焊 实际发现贴片速度要比直插快 接至于itg3205么。表示可以热风枪焊。。焊锡量相当关键。。//我现在打算把nrf24l01遥控改成红外的
嘿嘿,我绝对贴片对我来说太困难了,不过我打算买一个新的电烙铁,原来那个太挫了,焊出来都是锡豆
多谢鼓励:) 没放弃,呵呵。
不过最近也是工作很忙,所以没啥动作
一直关注和追随,坚持真是一件不容易的事,加油!
谢谢!
固定翼飞机的升力中心与其重心不在一点,重心越低越稳定,四轴飞行器由于结构对称造成升力中心与其重心重合,不稳定,在静止状态下用一根针顶住飞行器中心看是否稳定与平衡,螺旋浆安装是否能朝外倾斜一点,用模糊控制可能会好一点。不过小弟都没试过没发言权(因为没m ),都只是些想象,不足为提。
我也想过重心的问题,所以把电池装在下面,理论上重心是要低一点。
事实上小四轴的平衡好像相对比较容易,我还没有把PID的算法加进去,只是简单的让四个轴功率加大,飞起来的时候摇摇晃晃却也不会像大四轴那样扣盘子
如果重心不能调低,将螺旋浆朝内倾斜安装应能自动平衡,稳定度与倾斜角度有关,朝外倾斜的话会降低稳定度,我想应该如此,请高手指点。
可能还是垂直向下比较好,主要是动力比较集中,向内倾斜也许可以增加稳定性,但是对称的两个电机,其实有一部分动力是互相抵消浪费了。
对于寸土寸金的小四轴来说,浪费能源太可惜了,平衡应该由PID来做
内倾和外倾都会导致合力降低,不管是大四轴还是迷你四轴都会影响动力性能和能源利用率.
前辈,最近我也和朋友一起在学着做四轴,因为说电调的控制还是用I2C总线来比较灵敏,但是要自己做电调的I2C接口,找了好久没有找到相关的资料。请问这个I2C接口应该怎么来做啊?小弟还是菜鸟,希望前辈能分享一下经验!
这个我也不会啊,不过应该不需要用i2c的电调,至少目前大部分四轴都是用PMW的电调做的。
北航校庆了
作为不杰出的校友,没有收到通知啊,所以也没有回去看看,呵呵
原来是我航的大神啊!膜拜一下!
校友,握手!
兄弟,最近在忙什么呢?好久没看到更新了
公司正在大干一百天……
其实已经加班好几个月了
难怪了很久没有看到更新新作品了:)
我是来继续跟踪学习小四轴的,最近工作太忙,哎…
請問一下我現在剛會控制電調!!
我該怎麼寫PID使他飛起來?
原生的PWM频率不是50Hz吧,
The frequency of the PWM signal is approximately 490 Hz.
http://arduino.cc/en/Reference/AnalogWrite
64分频,相位PWM
16M/64/2/255 = 490 Hz
啊,为什么我觉得自己穿越了,以前查资料的时候,好像到处看到的PWM周期都是20ms,现在看到都是2ms,真是糊涂了。
从链接看,确实应该是490Hz,多谢纠正!
不客气,你的文章对我帮助很大,四轴加油,呵呵
原来Arduino的PWM和Servo是这么个区别。
请问arduino输出pwm的最高频率是多少
开启版本-太极之章经验、浩然5倍 ,不仅耐玩,还能找到小时候在网吧把无影脚练到99.99的快感。千年采用官方地图新手村,无上限的提升怀旧感。并且添加新手任务,让你的新手路程不再孤单。 完成系列任务,离开新手村,踏上寻梦的征程。现开放地图:狐狸洞、极乐洞、王陵1-2、 太极剑门。曾经的小伙伴们还记得如何闯过这些层层关卡,拿到神兵利器的么。当然,不要一开始就去闯太极公子的寝宫,还是等有身狐狸袍再去吧。装备系统推出:浪人系列、黄龙系列、狐狸系列、极乐洞系列、王陵系列、太极系列。千年不仅让新玩家们的游戏体验绚丽夺目,并且让老玩家们感受到我们认真的态度,无论是新手装备还是顶尖神器,都真真切切的体现出每件
开启全民赌博时代 快来体验你的运气 【基本设置】:天堂2唯一一个养老服设置经验50倍,SP:100倍,掉宝:集合几位骨灰级玩家建议手动修改至最佳掉率。全区装备安全强化+5,最高+25 拒绝启动!散人天堂! 【NPC设置】:奇岩设置一键转职一键副职业,副职业认证,全能商店,功能传送等NPC,新号精通S装备。并在奇岩商店NPC出售+5死亡装备,让玩家简易起步。 【状态设置】:完全人性化设置状态NPC,一键装备,状态合并,一键回血,一键CP。一小时BUFF,处处为玩家便捷而设置!(更强大的BUFF在乎你自己的研究)。 【职业】职业平衡,不再出现全区只有一个职业,歌舞,霸狂,先主等职业优化合并。 【装
天上碑游戏内设置经验:20B,掉宝:20B,金钱10B,武功100B,NPC刷新:100B(怪死了就会刷)练级太慢?别担心,隐居有新手加宝,新手注册联系隐林居士可以领取10天最低12倍经验加宝,让你等级不会落别人太多,新手福利天天有,只要你敢来,我就敢送!大家不会在一味的枯燥杀怪了,目前游戏内活动很多,欢迎大家及时来参与,奖品是很丰厚的!天上碑加宝设置+3青龙白虎朱雀玄武,+3火甲+3火斗,810攻击+30武器,3倍逆天符1000张(本服3倍逆天符均为不可交易)本职业-30短武一把,内力+1020,小还丹10000,天龙丹20000每日福利为:天龙丹50000,小还丹4000(每天只能领取一次
游戏新增设置:本服50~100倍经验每级【50点属性点】 ,最高300级【还原药品每组50个】【创建角色命名支持任意中文】福袋掉落:福袋物品:各种+7极品技能装备游戏基础设置:1.人物上线技巧命中格挡全满,送2级执照,做完新手任务赠送新手武器!2.挂机机制:挂机人物必须在波本伊甸园,人物必须50级以上,在线30分钟5点积分。 注意:角色不能过图,下线。3.开放所有地图、野外PK、迷雾任务等功能。波本出售新手武器,各种胶囊、洗点药品、新手装备等,大漠出售高级药品。4.10大BOSS等你来挑战。BOSS所在地图,波本-自由-大雄峡谷-荒废-遗忘森林-水晶2层-罪恶3层-沙漠-终结者屋-中央广场BO
【版本介绍】:176传承精品….实力打造,2016年全新、独家、经典、好玩1〃7〃6精品复古,活动多,福利多,特色多,超级好玩,装备保值!【元宝比例】:1-1000元宝,点卡赠送90%,网银赠送100%。 点卡赠送后1-1900元宝,网银赠送后1-2000元宝。多充多得哦!【装备介绍】:游戏装备层次划分,[赤月套装] → [精良赤月套装] → [精品赤月套装] → [精英赤月套装],一切全部游戏爆出,爆率绝对真实!【地图介绍】:冰封,妖兽,殿堂地图免费下,魔泣,神魔,旧日为经典初期地图,7张特色打宝地图,2张个人,组队挑战地图,2张副本地图!【统战奖励】:,每天4-6个新区,五天为一个小统
11.0版本服务器设置与特色11.0版本说明:1. 100万战功系统.(31级战功系统)2. 血量无上限.(不再是以前的65536的显示范围)3. 15级技能.(技能可以分为15个级来学)4. 20格商店.(摆摊商店容量增加)5. 攻击上限为60000.(也就是说自爆可以爆到6万)6. 侵略系统.(可进入对方地图,但会被女神所诅咒)7. 能看到怪物所中状态和角色所中状态.8. 新增加套装系统.9. 新增散人打套装地点.(足球场)10.战3新增机器人,图7新增兔子王.(掉终极装备)11.新增宠物,时装.以下设置没有写出来的,全部和官方一模一样 游戏设置: 1、 300倍经验.80级封顶.上线可直
【版本介绍】 上线送无限门票大礼包,玩游戏就该尽情释放,不必压抑!【版本介绍】魔界、90SS、骨龙、翅膀、新称号、新副本、新皮肤【版本介绍】彻底封死外挂、无加速、无脱机、一切靠打【游戏介绍】所有职业和装备属性,经历精心测试反复调试!职业完美平衡!【版本介绍】本F独家制作设置,众多地图怪物与市场其他版本相识但是游戏玩法与众多【版本介绍】完美95级女鬼,完美二觉!!!【版本介绍】新增地图抉择之沼,100 BOOS【版本介绍】使用定制版云端封挂登陆器,封杀一切加速,脱机外挂【版本介绍】独特玩法,BOSS靠找,拒绝一个地图死蹲模式,动起来!!【版本介绍】SS→高级→三国→魔界→旷世新手上号送无限门票大
★☆★游戏特色介绍★☆★new【玩法简介】【版本简介】上线50级经验1000倍从古一到古六10分钟继可升到120级【版本简介】上线送两个RMB重楼(属性强大,带麻痹状态非冒牌重楼),另还送新手靓丽神器!【特色功能】商店大部分物品为1赠点,在官方要钱买的,我们这里全部免费【版本简介】新增终极神器,需九大门派神器各一把龙鳞30片,可炼化通灵,属性超赞,超级拉风【版本简介】新增真重楼7件套,包括真・重楼肩腰!地宫BOSS可爆,限时商店集齐7色龙珠也可购买【版本简介】加强9级宝石属性,让你PK更加刺激,更新官方冥晶石强大属性让你爽【版本简介】本服最高手工为90,全部秒做,BOSS人人有包! 【特色功能
本服設置: 經驗30倍 掉寶率60倍 合成與強化機率大幅度提高30% 新手創角贈送: 新手裝一套(強化版,攻防大幅提高) 寵物怪力鴨一隻 寵物羅漢猴一隻 30格永久背包三個(包括減輕,堅固) 黃金城時裝一套 新手保護等級上調至65等 本服特色: 每週開放雙倍經驗日 可與經驗卷軸疊加 怪物戰利品添加各種能力卷軸,技能強化石,遠古技能強化石,裝備強化道具等商城道具 新增特殊BOSS 擊殺掉落大量珍貴商城物品 城戰獎勵道具屬性大幅提高 新增洛尼亞地圖以及修改眾神庭院地圖怪物等級上限為110等 開放眾神庭院 6階武器,洛尼亞6階防具,飾品掉落 *修改眾神庭院BOSS水龍掉落超強飾品* 眾神庭院所有
本服属于防盛大长久服.因此装备跟级别都不是一天两天就可以搞的很好的,都需要玩家自己去花时间获得.升级指南 :1.新手出来后可以去元宝地图杀怪经验高,还可暴出很多元宝。2.天空小怪暴神武级,站神级,血煞级装备。玩家有用不上的装备可以拿去换经验,换元宝等等!3.公主一个灵符600万经验。技能书获得:初级技能书 :商店直接出售。中高级技能书 :尸王.炎魔.幽影.天空怪等等!.组合及强化技能书:所有BOSS出.装备获得 :所有BOSS刷新时间为2小时盘龙级 :天空、熔岩地狱、天绝魔域等等小怪暴圣天级 :熔岩地狱、天绝魔域、黄金之城等等小怪爆出.炎神级 :黄金之城、凌霄天界、海底世界、主宰者地图等等小怪
① 开区第⒈天 晚 7:30 夺宝,附加奖励 20000元宝+战神套装一套(不含武器勋章宝石)(此项奖励请第一时间联系客服qq领取)开区第⒉天 晚 7:30 夺宝,附加奖励 20000元宝.(此项奖励请第一时间联系客服qq领取)② 开区第⒉天 中午 1:00 六位天下第一奖 55级衣服一件加10000元宝. 要求55级以上↑(此项奖励请第一时间联系客服qq领取)③ 开区第⒊天 下午5点全区前6名分别奖励 必须68级以上↑ 麻痹戒指.太古轩辕剑.血煞刀.元宝20000.(此项奖励请第一时间联系客服qq领取)④ 新区第一位到67级 10000元宝 奖励. 第二,三位到67级 8000元宝 奖励.(
天堂2-2.5革命端为基础主职业达到Lv70需要1 – 2天主职业达到Lv76需要3 – 6天主职业达到Lv80需要7 – 10天普及S级一般装备需要15 – 20天普及S级王朝装备需要20 – 30天普及S80级金星装备需要30 – 60天服务器设置【经验倍率】1(vip加成100%)【金币倍率】1(vip加成100%)【掉落倍率】1.5(vip加成100%)【回收倍率】1.5(vip加成100%)【安全强化】3(武器上限+16、防具上限+10)【主职等级】Lv80(满级)【副职等级】Lv80(满级)【一键转职】一转¥3000、二转¥10000、三转¥5000000【全革职业】二十八大全革职
独家仿盛大‖同步盛大更新‖长久耐玩‖散人天堂重金打造‖首选长久‖公平稳定‖主元切换‖心命凝结‖天人加血‖天元心法等1.998海底世界‖装备狂暴‖高价回收‖BOSS爆麻痹‖级别好升‖冲级全送‖拒绝一切待遇 [注意:合区过程中会删除的50级以下小号数据!合区行会低于10人将被清理掉!超出10人将保留行会!老区后清理20人以下行会]注意:合区后的重名处理 !(造成原因是因为其它分区有帐号相同名字相同导致)[注意:合区后各玩家请用原来的帐号和密码登陆游戏,若提示密码错误,或登陆后发现人物名字、等级、装备等数据有误,很可能是和参与合并的其他服务器的玩家帐号相同,请在帐号后加a,如果仍然有误,则改为加b、
全新版本 再次升级 顶级120活动多 地图多 装备多 就是不变态 耐玩版装备爆率大大提高,轻松获得终极装备最刺激的游戏,最火爆的人气。兄弟们,剑指沙城,勇往直前.上线各种送,点你手软野怪爆元宝这里有人数爆满这里有外国玩家这里有活跃送高额奖励这里有元宝大比例 这里也有只要你来了。元宝水晶贡献样样有。上线即可享受以下福利调整游戏充值比例为1比1 000。 2.游戏等级加速,节奏加快,50倍打野告别乏味练级。 3.游戏元宝产出翻倍,平民玩家日赚过万元宝。再加上高额道具师 4.游戏商城_上架强力道具,上架黎饰饰品。5.增加限时活动次数,20倍爆率激情不断,多家族争夺战! 6.缩短等级__上限时间,