2014-6-5 16:51:24 [显示全部楼层]
97646浏览
楼主: Jane

[入门教程] Arduino教程13--自制风扇「DFR0100 」

[复制链接]

MoonShine  高级技匠

发表于 2015-8-14 12:33:32

inv 发表于 2015-1-17 15:45
能,一接电直接就转了,代码没起作用。。。

同上,代码是直接复制的,电路重插了好几次。。。。。
回复

使用道具 举报

1522631876  见习技师

发表于 2015-8-24 22:18:04

老师 我想问一下
if (reading != lastButtonState)这句last ButtonState初始值是LOW
if (reading != buttonState) 这句buttonState 没有初始值,前面也没有赋值语句,我想知道reading是怎么和buttonState比较的
回复

使用道具 举报

Cain  初级技匠

发表于 2015-8-26 17:47:32

linck 发表于 2015-7-28 22:42
我是刚买的套件,也是这个问题啊。按下按钮后要么是闪灭,要么是转2s后停止。LED和电机是同步的,去掉电机 ...

2s,是板子重启的时间,您可以把int relayState = HIGH;  改成int relayState = LOW;规避了会自动变化的现象。
回复

使用道具 举报

Cain  初级技匠

发表于 2015-8-26 17:49:07

EricKong 发表于 2015-7-31 19:04
我接通电源也是直接电机转了,所以我把电机放在继电器5脚,默认relayState=LOW。

另外我有个问题是关于直 ...

直流电机干扰一是保证供电足,二是在电击两端加电容滤波
回复

使用道具 举报

Cain  初级技匠

发表于 2015-8-26 17:50:08

MoonShine 发表于 2015-8-14 12:33
同上,代码是直接复制的,电路重插了好几次。。。。。

2s,是板子重启的时间,您可以把int relayState = HIGH;  改成int relayState = LOW;规避了会自动变化的现象。
回复

使用道具 举报

Cain  初级技匠

发表于 2015-8-26 17:52:06

1522631876 发表于 2015-8-24 22:18
老师 我想问一下
if (reading != lastButtonState)这句last ButtonState初始值是LOW
if (reading != but ...

int 的默认值是0,也就是low
回复

使用道具 举报

1522631876  见习技师

发表于 2015-8-26 18:43:53

Cain 发表于 2015-8-26 17:52
int 的默认值是0,也就是low

哦哦  好的 谢谢你啦
回复

使用道具 举报

木龙小驴  见习技师

发表于 2016-3-20 22:19:13

我也遇到过上面朋友的问题,就是点开开关,会转大概1s左右,然后电机停止,灯泡灭。
如果把电机拆下来的话,灯泡都是正常的。
是不是电压太小的缘故????求明白的大神给小弟解释
回复

使用道具 举报

Cherry_island  学徒

发表于 2017-4-19 12:24:54

按照原接线图,一接上风扇就会转动,按键开关并没有起到任何作用;
后面仔细检查了一下,发现不是代码的问题;而是按键开关哪里的接线有问题;数字信号控制口的2引脚那跟线不应该接按键开关的GND那个出接口,要换到高电平的那个入接口;
最后观察到的现象就是开始风扇转动,按键开关按下风扇停止转动;再按,风扇重新开始转动
回复

使用道具 举报

Cherry_island  学徒

发表于 2017-4-19 12:27:19

木龙小驴 发表于 2016-3-20 22:19
我也遇到过上面朋友的问题,就是点开开关,会转大概1s左右,然后电机停止,灯泡灭。
如果把电机拆下来的话 ...

原电路图接线有问题,数字信号控制口的2引脚那跟线不应该接按键开关的GND那个出接口,要换到高电平的那个入接口;这样就成功了;
回复

使用道具 举报

Cherry_island  学徒

发表于 2017-4-19 13:27:30

Mr.why 发表于 2015-2-9 23:09
Q1:为什么设buttonState、lastButtonState 2个中间变量?
Q2:最后一句,什么意思
// 改变button前一个状 ...

每次进入loop,就会读取一次按键状态值,50ms前后按键状态不一致,则改变relay 的值
所以需要一个btstate暂时存储50ms以前的数值用来做比较
需要lastBtState 来存储上一次读取的按键状态,用来和当前读取的值作比较;
回复

使用道具 举报

shijinxianzhe  高级技匠

发表于 2017-4-26 15:28:16

学习啦!
回复

使用道具 举报

esojourn  见习技师

发表于 2017-7-21 16:26:40

请问这个LED是负级接电阻的。和前面的例子不一样。这样也没问题是吗?
回复

使用道具 举报

Shuuei  高级技师

发表于 2019-4-10 21:47:45

感觉注释中的“等待50ms”会让人产生误解,以为是有个delay(50)的语句漏写了。但是想想应该是含在紧接着的if语句中的debounceDelay中,不直接delay(50)而设置抖动时间变量是为了照顾不同批次按键质量不一导致的抖动时间有长有短吗?
回复

使用道具 举报

Shuuei  高级技师

发表于 2019-4-10 22:37:03

想调电机转速。两个想当然的想法,均未达到预期效果。

第一个方案是想着在6脚下接一个10k电位器,通过分压来达到电压不同转速不同的效果。结果失败,一动不动。

于是第二个方案,想着通过analogin来读取电位器电压,pwm口接继电器4脚依据模拟口输入来供电电压值。结果是转动了,但都是低速转动,不对旋钮调节做出响应。

想想两个原因是否均为电流不足,130马达参考电流300-400mA,arduino引脚输出最大40mA,至于10k电位器分压... 所以是想当然了。

请问:
1、不知道能不能加个三极管放大下电流来达到驱动效果
2、不知道电机驱动版是什么原理



回复

使用道具 举报

绝地智者  见习技师

发表于 2019-7-19 22:15:42

厉害了,新手来顶一顶帖子,加油学习~
回复

使用道具 举报

千南  见习技师

发表于 2019-8-26 14:43:19

谢谢指导,学习了
回复

使用道具 举报

千南  见习技师

发表于 2019-8-26 14:43:23

谢谢指导,学习了
回复

使用道具 举报

千南  见习技师

发表于 2019-8-26 14:43:29

谢谢指导,学习了
回复

使用道具 举报

千南  见习技师

发表于 2019-8-26 14:43:33

谢谢指导,学习了
回复

使用道具 举报

千南  见习技师

发表于 2019-8-26 14:43:37

谢谢指导,学习了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail