How would I set this up with the peltier plate and Arduino to control temperature and also reverse the current?You would be better getting one
http://www.robotshop.com/en/dual-h-...hZjfE_z5YlB2o_UzcICMq_2LwddUU-cBoC3F8QAvD_BwE
![]()
How would I set this up with the peltier plate and Arduino to control temperature and also reverse the current?You would be better getting one
http://www.robotshop.com/en/dual-h-...hZjfE_z5YlB2o_UzcICMq_2LwddUU-cBoC3F8QAvD_BwE
![]()
I bought it but I'm getting it tomorrow since I need it urgently D:, so a 12V battery would be enough to supply this and a peltier plate?Buy that H bridge And I'll show you It's 8 amps and made right.
It's using a driver for tops side like Bertus said
I want to reverse current of peltier plate, and also with the ability to control the current so I can control only hotness once I reverse the current, or control only coldness if I did not reverse the current.You really need to post what you really want to do. links to all the parts you want to use.
What if I use 15V instead would that be okay?Sim don't look good
Looks like you get about 6.5 volts
Thank you so much I ordered it and it's coming tomorrowThe guy in the video was doing something else. The drivers going to get hot you could't run it long.
I'd get the H-bridge i posted for you.
I'll post how to hook it all up when i get home from work.
I'm not sure how to program this with the Arduino would it be the exact same?This is how you hook up the peltier and power supply
View attachment 140438
Okay! Thanks manGive it a shot I'll help you fix it. Just want make sure you learn something your code you posted wasn'tCode:I'm not sure how to program this with the Arduino would it be the exact same?
bad at all.
int i=0;
void setup() {
// Motor_1 controll pin initiate;
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(9, OUTPUT); // Speed control
// Motor_2 controll pin initiate;
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(10, OUTPUT); // Speed control
//Enable the Motor Shield output;
pinMode(6, OUTPUT);
digitalWrite(6, HIGH);
}
void loop() {
digitalWrite(6, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW); // Set the rotation of motor_1
digitalWrite(7, HIGH);
digitalWrite(8, LOW); // Set the rotation of motor_2
for(i=20;i<250;i=i+5)
{
analogWrite(9,i); // set the motor_1 speed ;
analogWrite(10,i); // set the motor_2 speed ;
delay(200);
}
Serial.println("stop 3s");
digitalWrite(6, LOW);
analogWrite(9,0); // set the motor_1 speed ;
analogWrite(10,0); // set the motor_2 speed ;
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // Set the rotation of motor_1
digitalWrite(7, LOW);
digitalWrite(8, HIGH); // Set th e rotation of motor_2
delay(3000);
digitalWrite(6, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // Set the rotation of motor_1
digitalWrite(7, LOW);
digitalWrite(8, HIGH); // Set the rotation of motor_2
for(i=20;i<250;i=i+5)
{
analogWrite(9,i); // set the motor_1 speed ;
analogWrite(10,i); // set the motor_2 speed ;
delay(200);
}
Serial.println("stop 3s");
digitalWrite(6, LOW);
analogWrite(9,0); // set the motor_1 speed ;
analogWrite(10,0); // set the motor_2 speed ;
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // Set the rotation of motor_1
digitalWrite(7, LOW);
digitalWrite(8, HIGH); // Set th e rotation of motor_2
delay(3000);
}
Is there anything I should be aware to prevent from damaging the peltier plate in the code??Here the code for how a motor would work with the h-bridge.
It's there sample.
Don't get hung up on the motor you do about the same thing to use the peltier
You power the wires one side high one low and pwm the power to set how cold you want.
Code:int i=0; void setup() { // Motor_1 controll pin initiate; pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(9, OUTPUT); // Speed control // Motor_2 controll pin initiate; pinMode(7, OUTPUT); pinMode(8, OUTPUT); pinMode(10, OUTPUT); // Speed control //Enable the Motor Shield output; pinMode(6, OUTPUT); digitalWrite(6, HIGH); } void loop() { digitalWrite(6, HIGH); digitalWrite(4, HIGH); digitalWrite(5, LOW); // Set the rotation of motor_1 digitalWrite(7, HIGH); digitalWrite(8, LOW); // Set the rotation of motor_2 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the motor_1 speed ; analogWrite(10,i); // set the motor_2 speed ; delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW); analogWrite(9,0); // set the motor_1 speed ; analogWrite(10,0); // set the motor_2 speed ; digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set th e rotation of motor_2 delay(3000); digitalWrite(6, HIGH); digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set the rotation of motor_2 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the motor_1 speed ; analogWrite(10,i); // set the motor_2 speed ; delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW); analogWrite(9,0); // set the motor_1 speed ; analogWrite(10,0); // set the motor_2 speed ; digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set th e rotation of motor_2 delay(3000); }
Sorry to bother but I need urgent help :// since this project is almost due how would I make it so that the power goes to the peltier plate until I turn off the system?Here the code for how a motor would work with the h-bridge.
It's there sample.
Don't get hung up on the motor you do about the same thing to use the peltier
You power the wires one side high one low and pwm the power to set how cold you want.
Code:int i=0; void setup() { // Motor_1 controll pin initiate; pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(9, OUTPUT); // Speed control // Motor_2 controll pin initiate; pinMode(7, OUTPUT); pinMode(8, OUTPUT); pinMode(10, OUTPUT); // Speed control //Enable the Motor Shield output; pinMode(6, OUTPUT); digitalWrite(6, HIGH); } void loop() { digitalWrite(6, HIGH); digitalWrite(4, HIGH); digitalWrite(5, LOW); // Set the rotation of motor_1 digitalWrite(7, HIGH); digitalWrite(8, LOW); // Set the rotation of motor_2 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the motor_1 speed ; analogWrite(10,i); // set the motor_2 speed ; delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW); analogWrite(9,0); // set the motor_1 speed ; analogWrite(10,0); // set the motor_2 speed ; digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set th e rotation of motor_2 delay(3000); digitalWrite(6, HIGH); digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set the rotation of motor_2 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the motor_1 speed ; analogWrite(10,i); // set the motor_2 speed ; delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW); analogWrite(9,0); // set the motor_1 speed ; analogWrite(10,0); // set the motor_2 speed ; digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the rotation of motor_1 digitalWrite(7, LOW); digitalWrite(8, HIGH); // Set th e rotation of motor_2 delay(3000); }
I haven't looked at the code at all but I'd be nervous about switching current direction at full power, because of the potential for thermal shock that might damage the TEC. I don't know how serious a problem this is and have no recommendation for the proper time to allow between switching states. It just seems to me that a time of zero might be a problem.Is there anything I should be aware to prevent from damaging the peltier plate in the code??
Thanks man I appreciate itwayneh I'm with you on that.
I've looked not found much telling a set time.
This is what I have found you read the plate temp and when it's at it normal state
you switch the current.
http://www.analog.com/media/en/tech...cles/37488110918229TEC_Application_Brief2.pdf
There using Temperature Acquisition and Closed-loop Control
First off make sure you hook it up Like i showed in post 49
I'll post you code to test that and then you can go from there.
Don't run the code you posted you want test it first.
int i=0;
void setup() {
// TEC112703 controll pin initiate;
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(9, OUTPUT); // Speed control
//Enable the Motor Shield output;
pinMode(6, OUTPUT);
digitalWrite(6, HIGH);
}
void loop() {
digitalWrite(6, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW); // Set the current direction of TEC112703
for(i=20;i<250;i=i+5)
{
analogWrite(9,i); // set the current of TEC112703
delay(200);
}
Serial.println("stop 3s");
digitalWrite(6, LOW);//Turns it all off
analogWrite(9,0); // Set the current direction of TEC112703
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // Set the current direction of TEC112703
delay(3000);
digitalWrite(6, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // set the current of TEC112703
for(i=20;i<250;i=i+5)
{
analogWrite(9,i); // set the current of TEC112703
delay(200);
}
Serial.println("stop 3s");
digitalWrite(6, LOW);
analogWrite(9,0); // set the current of TEC112703
digitalWrite(4, LOW);
digitalWrite(5, HIGH); // set the current of TEC112703
delay(3000);
}
This is all you need to use for the one h-bridge on A
It stops 3 seconds between changes you maybe need more time.
Code:int i=0; void setup() { // TEC112703 controll pin initiate; pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(9, OUTPUT); // Speed control //Enable the Motor Shield output; pinMode(6, OUTPUT); digitalWrite(6, HIGH); } void loop() { digitalWrite(6, HIGH); digitalWrite(4, HIGH); digitalWrite(5, LOW); // Set the current direction of TEC112703 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the current of TEC112703 delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW);//Turns it all off analogWrite(9,0); // Set the current direction of TEC112703 digitalWrite(4, LOW); digitalWrite(5, HIGH); // Set the current direction of TEC112703 delay(3000); digitalWrite(6, HIGH); digitalWrite(4, LOW); digitalWrite(5, HIGH); // set the current of TEC112703 for(i=20;i<250;i=i+5) { analogWrite(9,i); // set the current of TEC112703 delay(200); } Serial.println("stop 3s"); digitalWrite(6, LOW); analogWrite(9,0); // set the current of TEC112703 digitalWrite(4, LOW); digitalWrite(5, HIGH); // set the current of TEC112703 delay(3000); }
int i=0;
void setup() {
// TEC112703 controll pin initiate;
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(9, OUTPUT); // Speed control
//Enable the Motor Shield output;
pinMode(6, OUTPUT);
digitalWrite(6, HIGH);
Serial.begin(9600);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
void loop() {
char option;
Serial.print("please input a voltage\n");
if(Serial.available())
{
digitalWrite(6, HIGH);
option = Serial.read();
if(option == 'a')
{
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(6, LOW);
analogWrite(9,0);
delay(5000);
digitalWrite(6, HIGH);
delay(2000);
digitalWrite(4, HIGH);
digitalWrite(5, LOW); // Set the current direction of TEC112703
for(i=20;i<200;i=i+5)
{
analogWrite(9,i); // set the current of TEC112703
delay(500);
}
}
else if(option == 'c')
{
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(6, LOW);
analogWrite(9,0);
delay(5000);
digitalWrite(6, HIGH);
delay(2000);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
for(i=20;i<200;i=i+5)
{
analogWrite(9,i); // set the current of TEC112703
delay(500);
}
}
}
| Thread starter | Similar threads | Forum | Replies | Date |
|---|---|---|---|---|
| J | Repair PCB sitting on top of an aluminum plate | General Electronics Chat | 8 | |
| A | Help diagnosing this voltage regulator over heating and hotplate not heating? | Technical Repair | 7 |