Overclock.net › Forums › Cooling › Cooling Experiments › Electronic PWM fan controller using a micro
New Posts  All Forums:Forum Nav:

Electronic PWM fan controller using a micro - Page 2

post #11 of 19
yeah i pretty much got all the plans layed out.

just havnt gone down n got the stuff ( and still not sure about a switch. but they should know or i think i know a guy who will know lol )
    
CPUMotherboardGraphicsRAM
2600k @ 4.4ghz Asus p8z68-v PRO EVGA gtx 460 EE + ESC 450 4gb ddr3 gskill 
Hard DriveOSMonitorKeyboard
2 x 1tb samsung spinpoint windows 7 2 x 19" LCD 1440 x 900 :( Razer Black widow 
PowerCaseMouse
Silverstone strider 1000w Plus 600t  Razer Naga 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
2600k @ 4.4ghz Asus p8z68-v PRO EVGA gtx 460 EE + ESC 450 4gb ddr3 gskill 
Hard DriveOSMonitorKeyboard
2 x 1tb samsung spinpoint windows 7 2 x 19" LCD 1440 x 900 :( Razer Black widow 
PowerCaseMouse
Silverstone strider 1000w Plus 600t  Razer Naga 
  hide details  
Reply
post #12 of 19
Thread Starter 
Well ive devoted this morning to making a program which would allow me to make and control PWM outputs from normal on/off outputs. Needless to say its been screwing with my head a bit. I also cleaned up my code a bit. I have managed to get it working with one pin, i am able to accurately control a motor speed with it. Heres the code:
Code:
setfreq m8
pause 2000

Symbol half = %11111111
Symbol stp = %00000000
Symbol duty = W0
duty = 70

do

let pins = half
pause duty
let pins = stp
pause 70

do while pin0 = 1
duty = duty + 1
let pins = half
pause duty
let pins = stp
pause 70

Loop

do while pin1 = 1
duty = duty - 1
let pins = half
pause duty
let pins = stp
pause 70


Loop

Loop
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
post #13 of 19
Thread Starter 
I have decided that emulating any more than one pwm pin in software will be too difficult. Instead i will be moving my hardware platform to PICAXE 08M chips, i have some development boards for them which makes them perfect for this. I will use both the hardware PWM pin on them and emulate on on a digital output, this means i will have two channels per chip which is fine by me.

I'm currently writing the program for them and i have at least one of the development boards with me so i should have a prototype ready within a day or so. I'll update with the program once iv'e finished writing it.
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
post #14 of 19
Thread Starter 
I finished writing the program for it a little while ago and forgot to update. I am now soldering the components onto the board, ill see if i cant find a camera and take a few pictures of the hardware im using later.

Heres the code:
Code:
'This is for a picaxe 08M chip
'It is for controlling two fans using PWM, it uses one hardware pwm pin and one pin with software pwm

setfreq m8
pause 1000

Symbol duty0 = W0
Symbol duty1 = W1

Duty0 = 600
Duty1 = 60

Output 0
Input 1

do

pwmout 2,249,Duty0

do while pin4 = 1 and pin1 = 0
Duty0 = Duty0 + 15
pwmout 2,249,Duty0
Loop

do while pin4 = 1 and pin1 = 1
Duty0 = Duty0 - 15
pwmout 2,249,Duty0
Loop

let pins = 00000001
pause duty1
let pins = 00000000
pause 50

do while pin3 = 1 and pin1 = 0
duty1 = duty1 + 1
Loop

do while pin3 = 1 and pin1 = 1
duty1 = duty1 - 1
Loop



Loop
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
post #15 of 19
I'm doing a similar project with a PSoC microcontroller. I'm using N-channel MOSFETs instead of BJTs since there is very little power dissipation when they are configured as a switch. I'll be interested to see how you do this
    
CPUMotherboardGraphicsRAM
FX-8120, and a bunch more AM3/AM2+ Crosshair V, Crosshair IV Lots of green Dominator GT 
RAMRAMHard DriveCooling
Dominator GT Perfect Storm M4 64Gb Dihydrogen monoxide, Carbon dioxide, Liquid Nit... 
CoolingCoolingOSPower
OCN Marksman pot k|ngp|n F1 Dark pot Stripped Xp Antec 1200W HCP 
Case
Dimastech Hard 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
FX-8120, and a bunch more AM3/AM2+ Crosshair V, Crosshair IV Lots of green Dominator GT 
RAMRAMHard DriveCooling
Dominator GT Perfect Storm M4 64Gb Dihydrogen monoxide, Carbon dioxide, Liquid Nit... 
CoolingCoolingOSPower
OCN Marksman pot k|ngp|n F1 Dark pot Stripped Xp Antec 1200W HCP 
Case
Dimastech Hard 
  hide details  
Reply
post #16 of 19
Thread Starter 
Yes i considered using MOSFETs, i used one for my other fan controller, main reason im using BJTs is because i have an abundance of them.
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
post #17 of 19
If you want to do it without the micro controller, you can hack something together with a 555 timer IC, potentiometer, and comparator. Now, whether or not this will handle one or more fans, I cannot say off the top of my head.

I'm using mine to control a much heavier-duty mosfet for a battery charger.
Desktop
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 @ 4.0 GHz - 1.32V Asus P6T XFX 5870 6GB DDR3 
Hard DriveOptical DriveOSMonitor
2x WD Black 1TB Lite-On DVD-RW Windows 7 pro x64 Asus 23" 1080p 
KeyboardPowerCaseMouse
Logitech G15 Corsair 650TX Antec P183 Logitech G5 
  hide details  
Reply
Desktop
(13 items)
 
  
CPUMotherboardGraphicsRAM
i7 920 @ 4.0 GHz - 1.32V Asus P6T XFX 5870 6GB DDR3 
Hard DriveOptical DriveOSMonitor
2x WD Black 1TB Lite-On DVD-RW Windows 7 pro x64 Asus 23" 1080p 
KeyboardPowerCaseMouse
Logitech G15 Corsair 650TX Antec P183 Logitech G5 
  hide details  
Reply
post #18 of 19
Thread Starter 
yes i have already done this, i moved onto using i micro to have more accurate controls and to allow for digitsl inputs (i prefer the use of discrete buttons to a knob)

How much power it can handle isnt up to the control circuit but rather the type and size of transistor, MOSFETs can handle more power running through them because they dissapate less power than BJTs.
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
post #19 of 19
Thread Starter 
yes i have already done this, i moved onto using i micro to have more accurate controls and to allow for digitsl inputs (i prefer the use of discrete buttons to a knob)

How much power it can handle isnt up to the control circuit but rather the type and size of transistor, MOSFETs can handle more power running through them because they dissapate less power than BJTs.
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
BLU
(13 items)
 
  
CPUMotherboardGraphicsRAM
fx-8120 990FXA-UD5 Dual Gigabyte GTX560 Ti  G.Skill Ripjaws X 1600MHz CL8 8Gb 
Hard DriveOSMonitorPower
120gb OCZ Vertex 2, 1 + 2 Tb WD Green Windows 7 Pro Samsung 2233SW 21.5" + 2233 21.5" + ASUS 20" Corsair HX-750 
Case
Custom server case 
  hide details  
Reply
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Cooling Experiments
Overclock.net › Forums › Cooling › Cooling Experiments › Electronic PWM fan controller using a micro