element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Forget Me Not Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Forget Me Not Design Challenge
  • More
  • Cancel
Forget Me Not Design Challenge
Blog [CaTS] ForgetMeNot - Week 10: Peltier cooling experiment
  • Blog
  • Forum
  • Documents
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: fvan
  • Date Created: 9 Oct 2014 7:26 PM Date Created
  • Views 2241 views
  • Likes 1 like
  • Comments 10 comments
  • forget_me_not
  • design_challenge
  • openhab
  • tektronix
  • rpisoc
  • iot_pet_care
  • eclipse
  • internet_of_things
  • enocean
  • cats
  • raspberrypi
  • smarthome
  • challenge
  • iot
  • enocean_pi
Related
Recommended

[CaTS] ForgetMeNot - Week 10: Peltier cooling experiment

fvan
fvan
9 Oct 2014

Previous posts for this project:

  • [CaTS] ForgetMeNot - Index
  • [CaTS] ForgetMeNot - Week 0: Project Description
  • [CaTS] ForgetMeNot - Week 1: EnOceanPi and Sensors
  • [CaTS] ForgetMeNot - Week 2: Elro CoCo and Pi Cam with OpenHAB
  • [CaTS] ForgetMeNot - Week 3: Data persistence and charts with OpenHAB
  • [CaTS] ForgetMeNot - Week 4: Arduino-OpenHAB communication
  • [CaTS] ForgetMeNot - Week 5: Getting familiar with EAGLE
  • [CaTS] ForgetMeNot - Week 6: Getting to know the TBS1052B-EDU oscilloscope
  • [CaTS] ForgetMeNot - Week 7: First tests with RPiSoC
  • [CaTS] ForgetMeNot - Week 7 (2): More testing with RPiSoC
  • [CaTS] ForgetMeNot - Week 8: Water dispenser and temperature
  • [CaTS] ForgetMeNot - Week 9: RFID Cat detection and identification
  • [CaTS] ForgetMeNot - 3D Printing: EnOcean sensor bracket
  • [CaTS] ForgetMeNot - 3D Printing: EnOcean rocker switch and magnet holder
  • [CaTS] ForgetMeNot - 3D Printing: Food dispenser prototype
  • [CaTS] ForgetMeNot - 3D Printing: Weighing scale
  • [CaTS] ForgetMeNot - Security: Some basic tips
  • [CaTS] ForgetMeNot - Minion: Dave, the gassy minion
  • [CaTS] ForgetMeNot - Pi Camera: Wide Angle Lens

 

  • Introduction
  • Idea
  • Circuit
  • Mounting
  • Script
  • Test

 

Introduction

 

In the little time I have had this week to work on my project, I've been experimenting with a peltier. Ideally, I'd like to use it to cool the water in the bowl.

 

Idea

 

I got the idea for the cooling method while watching the Ben Heck show, more specifically, the EMF camping chair episode.

 

Having most of the parts laying around, I attempted my own version with:

  • a small peltier from previous experiments
  • fan from old computer
  • heatsink for old computer

 

Now, the peltier is most likely not powerful enough, but I would like to put the idea to the test using the hardware I already have.

 

Circuit

 

To drive the peltier, I used an N-channel MOSFET triggered by a PWM signal from the RPiSoC.

 

image

I made the circuit with some screw terminals, to which I can attach the PSU, the peltier and the RPiSoC. I put some hotglue on the back to avoid accidental short-circuits.

 

imageimage

 

Mounting

 

Using some clamps, I tried to flatten a part of the metal bowl. On that (supposed to be) flat side, I attached the peltier, heatsink and fan.

I say "supposed to be" because the result is still not flat enough for the peltier to make proper contact with the bowl.

 

imageimage

 

The mounting is not that nice, but it illustrates the idea and should be functional in the end.

 

Script

 

I wrote a simple script which will pass set the PWM signal's duty cycle to the passed value.

 

The script includes some simple checks:

  • an integer needs to be passed, else the duty cycle is set to 0
  • the integer's value needs to be between 0 and 100, else duty cycle is set to 0

 

#!/usr/bin/env python

from rpisoc import *
import sys

RPiSoC('SPI')

My_DutyCycle = sys.argv[1]

My_PWM = PWM(1) # Port 3 Pin 1
My_PWM.Start()
My_PWM.WritePeriod(65535)

try:
    My_DutyCycle = int(My_DutyCycle)

    if(My_DutyCycle >= 0 and My_DutyCycle <= 100):
        # Inside boundaries, set passed value
        print "Inside boundaries, set passed value"
        My_PWM.SetDutyCycle(My_DutyCycle)

    else:
        # Outside boundaries, turn off
        print "Outside boundaries, turn off"
        My_PWM.SetDutyCycle(0)

except ValueError:
    # Invalid value, turn off
    print "Invalid value, turn off"
    My_PWM.SetDutyCycle(0)

 

A quick sanity check of the script confirms the input is properly checked:

 

pi@webserver ~/psoc_2_pi/API_Python_v_1_1_1 $ ./rpisoc_peltier.py 5
Inside boundaries, set passed value
pi@webserver ~/psoc_2_pi/API_Python_v_1_1_1 $ ./rpisoc_peltier.py 100
Inside boundaries, set passed value
pi@webserver ~/psoc_2_pi/API_Python_v_1_1_1 $ ./rpisoc_peltier.py 101
Outside boundaries, turn off
pi@webserver ~/psoc_2_pi/API_Python_v_1_1_1 $ ./rpisoc_peltier.py a
Invalid value, turn off
pi@webserver ~/psoc_2_pi/API_Python_v_1_1_1 $ ./rpisoc_peltier.py 0
Inside boundaries, set passed value

 

 

Test

 

In the pictures below, you can witness the test setup.

 

The multimeter measures the current draw of the peltier and fan, the scope visualises the PWM signal of the RPiSoC.

From left to right, 0% duty cycle, 50% and 100%.

 

imageimageimage

 

During the tests, I was able to have this specific peltier run without the heatsink becoming too hot. I'll have to calculate which peltier and heatsink should be used in the end, considering the amount of water to be cooled, by how many degrees and in which timespan. This might however result in a large heatsink, rendering the solution rather impractical.

 

Currently, this can only be considered a proof of concept. As the peltier is not making proper contact with its full surface with the bowl, the cooling effect is not properly passed.

I'll try to find a solution for this in the days to come, but time is running out, and everything still needs to be combined into a single solution, so I'll leave it at this for today.

 

More on this subject soon, hopefully!

  • Sign in to reply
  • fvan
    fvan over 10 years ago in reply to jw0752

    Hi John,

     

    putting the peltier at the bottom of the bowl would be ideal. Unfortunately, in my design, the bowl is put on a weighing scale so I can measure the quantity of water inside the bowl and automatically refill if needed (see here and here). I'm afraid it would all become to high.

     

    Thanks for the tips!

     

    Frederick

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • fvan
    fvan over 10 years ago in reply to michaelwylie

    I haven't image

     

    Guess I'll have to look it up!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • michaelwylie
    michaelwylie over 10 years ago in reply to fvan

    Have you seen the Futurama episode "That Darn Katz"?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jw0752
    jw0752 over 10 years ago

    Hi Frederick, I like your idea and what an thoughtful cat owner you are. If you put the peltier against the flat bottom of the bowl and then set the inverted heat sink into a shallow pan of water you could dissipate a lot of heat. Further if you extended the pan of warm water with a sealed top you would produce a warm area for your cat to rest on after the cool drink.

    John

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • fvan
    fvan over 10 years ago in reply to mcb1

    Nice one Mark ... It's true though that I shouldn't spoil them too much. They might get used to it and start demanding more ...

     

    I was probably being too gentle with the bowl. Oh well, hammer it will be then image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube