Page 28 of 41 FirstFirst ... 1824252627282930313238 ... LastLast
Results 271 to 280 of 405

Thread: The big TEC driver thread!

  1. #271
    Join Date
    Jan 2006
    Location
    Switzerland
    Posts
    129

    Default

    Gyus, no a band gap is never necessary. Just design the control loop properly. This works no matter how large or small the heat load is. Why spending so much effort on a technically ambitious design and then waste the potential in the last step.

  2. #272
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    Quote Originally Posted by RedlumX View Post
    Gyus, no a band gap is never necessary. Just design the control loop properly. This works no matter how large or small the heat load is. Why spending so much effort on a technically ambitious design and then waste the potential in the last step.
    Don't worry, I have no intention of compromise. That is why I am planning for firmware before implementation. I am fairly confident after an 8 hours session of thinking, planning and modeling today I am on the right track now.

    My thoughts are now on current limiting. The current monitoring signal is derived before the L/C LPF, so I have implemented a 2.5 x Nyquist frequency integrator in software to derive average current. I am using this to gain control the PID output. Not yet tested, but I feel my theory is valid.

    At the end of the day, the source code will be available under GPL v3, so if your not happy with the results you have the choice to either contribute to development by providing patches or revisions, or if you feel so inclined branch the code or create your own project using the code.
    This space for rent.

  3. #273
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    Click image for larger version. 

Name:	Single PID with I limit.png 
Views:	194 
Size:	36.4 KB 
ID:	23732
    Here is my current logical diagram.
    Last edited by dnar; 02-19-2011 at 07:47.
    This space for rent.

  4. #274
    Join Date
    Jan 2006
    Location
    Switzerland
    Posts
    129

    Default

    It would be extremely handy if one could open the loop in software and also have an interface for writing and reading the "open ends". Then determining the open loop response would be a snap, and that's necessary for properly determining the PID parameters. The direct cut-n-try method is quite painful and you are never sure whether you reached the optimum. Since the whole setup is digital anyway, why not make use of all of its potential.

  5. #275
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    Quote Originally Posted by RedlumX View Post
    It would be extremely handy if one could open the loop in software and also have an interface for writing and reading the "open ends". Then determining the open loop response would be a snap, and that's necessary for properly determining the PID parameters. The direct cut-n-try method is quite painful and you are never sure whether you reached the optimum. Since the whole setup is digital anyway, why not make use of all of its potential.
    I have you covered here. As I mentioned earlier, a few nights ago I started an application that provides:

    Display values: P_Term, I_Term, D_Term, PV
    Display and edit: P_Gain, I_Gain, D_Gain, Integral Windup Guard
    Real time values & graph: Setpoint, Temperature

    This communicates with the MCU via RS-232 and permits on the fly tuning with gain's stored in EEPROM. You can also disable the PID loop and determine the step response.

    This will be available in H/W v2 as it requires asynchronous communications.
    This space for rent.

  6. #276
    Join Date
    Jun 2010
    Location
    Zweibrücken, Germany
    Posts
    605

    Default

    Quote Originally Posted by dnar View Post
    Rewritten my PI loop to full PID with floating point math. Just sorting the Timer PWM code now. I'll have code ready for when the hardware arrives.

    You’re a beast dude! I’m just glad I had such a competent partner on this little joint venture project.


    Quote Originally Posted by dnar View Post
    BTW, I was planning to release the code under the GNU License (version 3). http://www.gnu.org/licenses/gpl.html

    What are you planning re the hardware?

    The hardware goes with the software, It’s a package deal..
    Once the V2 is up and running I’ll probably do a couple of versions with an LD-driver (3A and 7A) on board.


    Quote Originally Posted by dnar View Post
    One more thing, we need a name for this project. Got any ideas?

    Solar D-TEC (v1)?

    I put the following on the PCB “Solar D-TEC V1.00”


    Quote Originally Posted by dnar View Post
    EDIT: BTW, I just had a closer inspection of the LMD18200 spec sheet. I note:

    This bridge will shutdown just above the FLAG output threshold anyways.

    If there is need to implement thermal shutdown, we could simply use this Open Collector output to clamp the PWM input. It would require a 560R series resistor from the MCU PWM output.

    I added this plus a diode; I had to change the circuit on the flag out a little due to the LED on the flag out to keep the LED form being sinked on the MCU out during PWM lows. See the update schematic..


    Since its weekend and the PCB-Manufacturer have not started production yet, I was able to re-upload the file, so the PCB is up to date.


    In the V2 the flag out is going on an MCU-I/O, is that ok with you?
    Attached Thumbnails Attached Thumbnails MCUTEC-Controller ATtiny24 V1.00.pdf  

    Last edited by Solarfire; 02-20-2011 at 01:35. Reason: schematic update

  7. #277
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    Quote Originally Posted by Solarfire View Post
    I added this plus a diode; I had to change the circuit on the flag out a little due to the LED on the flag out to keep the LED form being sinked on the MCU out during PWM lows. See the update schematic..
    Dude, R25 should be inline with MCU pin 5 and the bridge PWM input... It's purpose was to current limit the MCU output when the o/temp protection kicks in... As it is now, the open-collector will only add 560R load to the PWM signal, but it won't stop it. No biggy on this release, I doubts it will ever trigger.
    Quote Originally Posted by Solarfire View Post
    In the V2 the flag out is going on an MCU-I/O, is that ok with you?
    Yeah cool.

    Since this controller will cool and warm, I thought a good name could be "Solar-fire-n-ice".
    This space for rent.

  8. #278
    Join Date
    Jun 2010
    Location
    Zweibrücken, Germany
    Posts
    605

    Default

    Quote Originally Posted by dnar View Post
    Dude, R25 should be inline with MCU pin 5 and the bridge PWM input... It's purpose was to current limit the MCU output when the o/temp protection kicks in... As it is now, the open-collector will only add 560R load to the PWM signal, but it won't stop it. No biggy on this release, I doubts it will ever trigger.

    Yeah cool.

    Since this controller will cool and warm, I thought a good name could be "Solar-fire-n-ice".
    Still got it changed, my fast is a little slow today.. was at one of them moist birthday partys last night..

    cheers!

  9. #279
    Join Date
    Jun 2010
    Location
    Australia
    Posts
    3,734

    Default

    Quote Originally Posted by Solarfire View Post
    Still got it changed, my fast is a little slow today.. was at one of them moist birthday partys last night..

    cheers!
    Cool. Might have been easier if you had sent me the eagle file.

    I did a little more planning and documentation tonight for the V2 firmware. I have added the variables that may be read or read/write from the RS232 port. I also documented manual tuning. If I feel brave once V2 is up and running, I would like to tackle an auto-tune feature.

    I have prepared the GNU GPL v3 license covering the software.
    Code:
    Project: Solar fire-n-ice: An advanced bipolar PID software controller for Peltier devices.
    Credits: This is a Photonlexicon community project http://photonlexicon.com
    Hardware platform: Atmel ATTiny24/44/84 MCU 
    Hardware developers: 
    Frank Hill (Solarfire) VooDooI@online.de
    Wayne Osborn (dnar) wayne.osborn@dnaresearch.com.au
    
    @author Wayne Osborn wayne.osborn@dnaresearch.com.au, Copyright (C) 2011.
      
    @see The GNU Public License (GPL)
    
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
    Frank, you might want to look at the TAPR Open Hardware License. http://en.wikipedia.org/wiki/TAPR_Open_Hardware_License
    Attached Thumbnails Attached Thumbnails Single PID HW V2.png  

    Last edited by dnar; 02-20-2011 at 15:53. Reason: Updated license details
    This space for rent.

  10. #280
    Join Date
    Jan 2010
    Posts
    24

    Default

    Hi,
    A few suggestions:

    Can we also connect the overtemp line to an unused input on the v2 design? I know it is unlikely to ever be needed, but I cant think of a reason not to do it, since it should only need a pullup.

    Are there any hardware issues with using this design over a wider temp range? I have a couple of ideas of where to use this, but will be needing up to +95C, down to -30C (using a +5C water cooled TEC).

    Also, for a future (?V3) design, how hard would it be to drive 2 LMD18200 bridges, driving 2 TECs, but temp controlling the same thing, i.e. 2 TECs in parallel to boost the heating/cooling capacity?

    Regarding the temp monitoring signal conditioning, could we add a header that has this type of pinout:

    1. 0volts
    2. Vsupply
    3. (something like) 1-4volts temp out (from on board NTC sig conditioning)
    4. 1-4 volts temp in (to MCU, maybe via span and zero adj?)

    with a link on pins 3 and 4 for normal operation with the on-board NTC sig conditioning.

    This way, for any more esoteric analog sensor signal conditioning, a small sub board/breadboard could be made to just do the sig conditioning for whatever sensor type it is for.

    I realise that these suggestions are beyond what a diode or SS laser TEC cooler design needs to do, but if this little TEC controller works as well as I think it might, I can see it being used all over the place, as an easy, drop in module to temp control all kinds of stuff.

    Cheers,

    Pete

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •