极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: Super169

用想 pro mini 做 12v 风扇既速控及时间制

[复制链接]
发表于 2014-5-7 21:47:02 | 显示全部楼层
Super169 发表于 2014-5-7 21:27
我把 ULN2003 拆了出來, 插在麵包板上測試.

// 只有當 analogWrite 為 250 時風扇會轉動, 甚至在 digitalWrite HIGH 時也不會轉.//

很有趣的結果,是甚麼樣的調速風扇?怎樣控制調速的?可否拍個照見識、見識一下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-7 21:59:20 | 显示全部楼层
河山 发表于 2014-5-7 21:39
HIGH的时候应该是停,LOW的时候才会接通电机的,按图看你的风扇里面是有控制电路的,不能用这样的方法来控制 ...

你說的沒錯, 看來這風扇不能用 PWM 控制速度.

我拿了另一把 沒註明電流的風扇測試, 不論直接用 ULN2003 或經由模塊連接, 均可以用 PWM 控速.



相中的 SILenx 6000 RPM 12V DC 靜音扇可以經 PWM 控速.
而 ADC 的 12V 0.11A BALL BEARING 扇就不可以.

但我現在用的風扇控制器, 相中長方形有個圓形扭的一個, 可以對兩種風扇控制速度.
看來, 那個東西並不是 Arduino 用 PWN 可以取代的, 要再找其他方案.  我相信 Arduino 一定可以做到的.

用萬用錶再度一下, 它是籍改變電壓去控制速度的.  ULN2003 接收了 PWM 的訊號, 都是改變了電壓嗎?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-7 22:02:03 | 显示全部楼层
eddiewwm 发表于 2014-5-7 21:47
// 只有當 analogWrite 為 250 時風扇會轉動, 甚至在 digitalWrite HIGH 時也不會轉.//

很有趣的結果, ...

HIGH/LOW 也不轉的原因....實在非常慚愧...你再看看我的程式, 應該會明白的.   
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-7 22:12:23 | 显示全部楼层
奇怪, 我用萬用錶量度 ULN2003 經 PWM 控制下的輸出, 也是在改變電壓.
而我的風扇速控, 最是8V 左右, 風扇已在轉動了.
我把 ULN2003 用 200 輸出時, 已經有 9V, 但風扇還是不會轉.
除了電壓外, 還有什麼因素會影響呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-7 22:23:30 | 显示全部楼层
完全不明白, 把程式修改了, 手動改PWM 值.

  1. #define FAN_PIN 10

  2. int speed = 200;


  3. void setup()
  4. {
  5.   Serial.begin(115200);
  6.   pinMode(FAN_PIN, OUTPUT);
  7.   setSpeed();
  8. }

  9. void loop()
  10. {
  11.   if (Serial.available()) {
  12.     char c = Serial.read();
  13.     while (Serial.available()) Serial.read();
  14.     if (c == 'i') speed += 5;
  15.     if (c == 'd') speed -= 5;
  16.     setSpeed();   
  17.   }
  18. }

  19. void setSpeed()
  20. {
  21.   Serial.println(speed);
  22.   analogWrite(FAN_PIN, speed);
  23. }
复制代码


當風扇開動時, 就去量度電壓, 發覺如果用 ULN2003 操控, 電壓要有 11.1 V 才會轉動.
同樣方法用風扇控制器供電, 把風速調至最低, 量度電壓, 只有 6.7V 就可以轉動了.

既然 6.7V 已經可以推動風扇, 為何用 ULN2003 供電時, 10V 也不會轉?  要有 11V 才起動呢?
會否因為經了 ULN2003 後, 可輸出的電流比較少呢?
回复 支持 反对

使用道具 举报

发表于 2014-5-7 22:40:02 | 显示全部楼层
Super169 发表于 2014-5-7 22:23
完全不明白, 把程式修改了, 手動改PWM 值.

#define FAN_PIN 10


或者用示波器看看就可以解開迷團。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-7 22:47:11 | 显示全部楼层
eddiewwm 发表于 2014-5-7 22:40
或者用示波器看看就可以解開迷團。

oh....我沒有這個設備.......
請問是什麼原因呢? 是否因為 PWM 的電壓, 並非真正的電壓呢?
我可以用 Arduino 取代那個風扇控制器嗎?  因為除左速控及時間開關外, 我還是加入一些功能 (例如測溫), 如果可以轉用 Arduino, 就可以輕鬆解決很多問題了.  
回复 支持 反对

使用道具 举报

发表于 2014-5-7 23:35:24 | 显示全部楼层
Super169 发表于 2014-5-7 22:47
oh....我沒有這個設備.......
請問是什麼原因呢? 是否因為 PWM 的電壓, 並非真正的電壓呢?
我可以用 Ar ...

一般的萬用錶是量不準這種電壓的。或者嘗試整一個簡易示波器,以下是工坊內其中的一個參考:

基于Arduino的示波器V0.1 12864版
http://www.geek-workshop.com/thread-2588-1-1.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-8 00:07:41 | 显示全部楼层
eddiewwm 发表于 2014-5-7 23:35
一般的萬用錶是量不準這種電壓的。或者嘗試整一個簡易示波器,以下是工坊內其中的一個參考:

基于Ardu ...

用 Arduino 的接口, 只可以量 5V, 要串上其他元件降低電壓?

我在網上找了一些 PWM 的資料, 我的理解是 PWM 並非正常穩定的電壓, 而是以高速不變跳動而得出的相約比例去降壓.  而風扇的開動要有實在的電壓才可以, 當中的不斷升降而做成不斷開關, 有些電機啟動反應快, 就可以造成類似速控的效果.  但如果風扇的啟動反應比較慢, 未開始轉動便要停了, 結果就算超過可以起動的電壓, 還是不會轉.  我的風扇在 11V 時, 超過九成的時間是高壓的, 時間足夠啟動風扇轉動, 所以就可以轉了.

而我的風扇控制器, 是真正的降壓, 提供穩定的電源, 因此只要達到基本需求, 就是電壓只有 6.7V 時已可以推動風扇了.  但 PWM 模式下因為持續供電的時間不足夠, 所以 10V 也不行.

不知我的理解是否正確.  
回复 支持 反对

使用道具 举报

发表于 2014-5-8 01:01:59 | 显示全部楼层
Super169 发表于 2014-5-8 00:07
用 Arduino 的接口, 只可以量 5V, 要串上其他元件降低電壓?

我在網上找了一些 PWM 的資料, 我的理解是 ...

//風扇控制器, 是真正的降壓//
很有啟示的一句,但要先弄清楚 風扇是否祇接了紅、黑電源線,(因照片的風扇是三根線的,看來應是普通的帶轉速回饋的風扇,即第三根是轉速訊號線),若是這樣,則理解跟實際很吻合了!

祇是之前提及的 // 相中的 SILenx 6000 RPM 12V DC 靜音扇可以經 PWM 控速// ,很令我疑惑,因理論上這風扇也應是同樣不行才合理的。

唔理點啦,下面兩篇文章對進一步認識件事應該有o的幫助:
http://wenku.baidu.com/view/7a76a2fb0242a8956bece45b.html
http://wenku.baidu.com/view/38d6ee6f58fafab069dc02cc.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-8 01:47:43 | 显示全部楼层
eddiewwm 发表于 2014-5-8 01:01
//風扇控制器, 是真正的降壓//
很有啟示的一句,但要先弄清楚 風扇是否祇接了紅、黑電源線,(因照片的風 ...

風扇都只接紅黑線, 因為都是測速版, 所以是三線, 但測速對我沒意思.
再三到買風扇的店看了風扇的資料, 還是不明白為左 SILENX 的可以用 PWM 控制.
兩者的資料如下:

製造商:SILENX
軸承:液压轴承
電壓DC12V
電流:0.07A
風壓質:3.98CFM
轉速:4500RPM 标签转速标为6000转,实际为4500转左右
噪音值:10dba
SIZE:40X40X10mm
接頭:3PIN接頭 3线 支持测速
原廠提供壽命:80000小時(測試溫度40度c以下)

产品品牌:AVC 寄宏
产品型号:DS04010B12H
外观尺寸:40*40*10MM
转速参考:5000±10%RPM
轴承类型:双滚珠轴承
使用寿命:50000小时
噪音参考:21DB
风量参考:28.17-35.97CFM   
额定电压:12V
额定电压:0.11A
接口类型:主板3pin接口,线长约16厘米。
转速监测:支持

液壓 或 滾珠, 不會影響是否用 PWM 吧.  難道如我所想, 液壓的反應時間比較短, 起動比較快, 而且需要電流比較少, 所以比較容明經 PWM 啟動?
看了你的資料....是否暗示要 4P 帶 PWM 的才可以用 PWM 控制?

不想再買 4P 的 PWM 風扇了, 之前為了測試不同的效果, 現在已買了十多把不同的風扇了.  

如果不直接用 PWM 的方法, 有可能用 Arduino 做出以 PWM 去改變真正電壓的簡單方案嗎?  
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-8 01:56:50 | 显示全部楼层
eddiewwm 发表于 2014-5-8 01:01
//風扇控制器, 是真正的降壓//
很有啟示的一句,但要先弄清楚 風扇是否祇接了紅、黑電源線,(因照片的風 ...

之前只看了你的第一個連結, 再看了第二個連結, 看來 液壓的好像跟滾珠有很大分別.
當中提及的.....哈哈, 我似懂非懂的飛快看了一遍....消化不了.  好像可以在變頻的操作, 用的是交流技術 (其實我不知是否跟 PWN 相同的).....
回复 支持 反对

使用道具 举报

发表于 2014-5-8 08:47:51 | 显示全部楼层
本帖最后由 河山 于 2014-5-8 08:50 编辑
Super169 发表于 2014-5-8 00:07
用 Arduino 的接口, 只可以量 5V, 要串上其他元件降低電壓?

我在網上找了一些 PWM 的資料, 我的理解是 ...


基本正确,你也可以试试在风扇的正负极上并联一个220uf/16v或470uf/16v的电解电容,接电容时注意正负极标识,不要接错了。
你是不是要做这个东西?http://www.guokr.com/article/437064/
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-8 11:54:37 | 显示全部楼层
河山 发表于 2014-5-8 08:47
基本正确,你也可以试试在风扇的正负极上并联一个220uf/16v或470uf/16v的电解电容,接电容时注意正负极 ...

Thanks a lot.

我要做的是控制 立體打印機的風扇, 8cm 的是抽氣用, 4cm 是噴咀降溫用的.
抽氣的可以長期開動, 只需調教速度就可以了.  但對噴咀的要在打印後一段時間才開動會比較好.
因為打印時, 最早的幾層不開風扇會比較容易固定在平台上, 而之後開動風扇, 打印出來成型的效果會比較好.
所以, 現在是先開了抽氣扇, 打印一段時間後 (約15分鐘, 視乎作品大細) 手動開風扇, 有需要時手動調教大細.
但有時會忙記了開噴咀風扇, 而且現在已加了兩個速控, 再加一個時間控制就太多了.
加上最近學玩 arduino, 所以想到可能 arduino 可以做到所需的, 如果可以用 arduino 做一個電路處理速度及時間, 就可以方便及整齊得多了.  將來再加上測溫也不是問題了.
回复 支持 反对

使用道具 举报

发表于 2014-5-8 16:15:05 | 显示全部楼层
本帖最后由 河山 于 2014-5-8 16:16 编辑
Super169 发表于 2014-5-8 11:54
Thanks a lot.

我要做的是控制 立體打印機的風扇, 8cm 的是抽氣用, 4cm 是噴咀降溫用的.


全部换成这种SILenx 6000 RPM 12V DC可以PWM调速的风扇就能解决问题了。或把风扇里面的电路拆了,直接用2003控制它的转速。
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-22 15:17 , Processed in 0.059600 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表