Pages: 1 [2] 3   Go Down
Author Topic: start /logooff sketch arduino in windows..  (Read 2446 times)
0 Members and 1 Guest are viewing this topic.
Firenze
Offline Offline
Jr. Member
**
Karma: 1
Posts: 65
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

potresti usare un rele SPDT, quando arduino e' accesso il programma tira su un'uscita che eccita il rele e muove la piattaforma su, il finecorsa interrompe il segnale dal rele al motore (solo il segnale di PIATTAFORMA SU, altrimenti non lo puoi piu muovere giu). Quando spegni il pc arduino si spegne, la tensione dell'uscita digitale cade e il rele si diseccita chiudendo il contatto di PIATTAFORMA GIU, il fine corsa interrompe il segnale dal rele al motore (solo il segnale di PIATTAFORMA GIU, altrimenti non lo puoi piu muovere su).


* rele_SPDT.png (1.57 KB, 100x48 - viewed 49 times.)
Logged

"Cosi non si va avanti..." disse il gambero

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora basta unire i due sketch ti fai la lettura sulla presenza di alimentazione(qui ci provo in teoria basta un analog read) e poi usi il tuo sketch sai ti rileverò un segreto qualcuno ha inventato gli IF  smiley-eek
Code:
#include <Servo.h>
  const int ledlettura = 6;
    Servo myservo;  
    void setup()
    {
      myservo.attach(3);  
    }
    void loop()
    {                                
        int valore = analogRead(ledlettura);
        if(valore > 50)
        {
        myservo.write(80);
        delay(2000);
        myservo.write(110);
        }
        else
        {
        myservo.write(80);
        delay(2000);
        myservo.write(110);  
        }
              
    }


ps non so come funziona l'analog read quando leggi l'alimentazione di una porta usb, ho messo 50 giusto per evitare i disturbi  smiley-mr-green

niente da fare non va.. smiley-sad
Logged

Offline Offline
Edison Member
*
Karma: 24
Posts: 2032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come hai provato?hai dato tensione al pin di lettura?
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come hai provato?hai dato tensione al pin di lettura?
si dandogli  e togliendo i 5 volt all ingresso del piedino 6 della scheda...non succedeva nulla
Logged

Offline Offline
Edison Member
*
Karma: 24
Posts: 2032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come hai provato?hai dato tensione al pin di lettura?
si dandogli  e togliendo i 5 volt all ingresso del piedino 6 della scheda...non succedeva nulla
puoi fare delle prove live,ovvero ti scrivo del codice e vediamo se va al momento?cosi facciamo dei test smiley
allora collega i 5 volt al pin 3 e carica questo sketch,cosi vediamo che leggiamo anche se forse ho capito quale il problema hai collegato la massa(gnd) dei 5v alla massa di arduino?
 
Code:
int analogPin = 3;     
                     
int val = 0;         

void setup()
{
  Serial.begin(9600);       
}

void loop()
{
  val = analogRead(analogPin); 
  Serial.println(val);             
}

« Last Edit: September 07, 2012, 02:56:47 am by Madwriter » Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pero' sul piedino 3 e collegato l input delle scheda firgelli .in pratica il collegamento e' quello che ho postato sulla pagina prima
Logged

Offline Offline
Edison Member
*
Karma: 24
Posts: 2032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pero' sul piedino 3 e collegato l input delle scheda firgelli .in pratica il collegamento e' quello che ho postato sulla pagina prima
Code:
int analogPin = 6;     
                     
int val = 0;         

void setup()
{
  Serial.begin(9600);       
}

void loop()
{
  val = analogRead(analogPin); 
  Serial.println(val);             
}
apri il serial monitor e dimmi cosa vedi,inoltre non hai risposto alla mia domanda hai collegato le masse in comune?
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scusa no..ho preso le masse dall ali esterno
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

allora se aggiungo loa 5 volt sul piedino 6 mi da valori compresi 398 e 408 di continuo.se la tolgo non cambia nulla...
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

potresti usare un rele SPDT, quando arduino e' accesso il programma tira su un'uscita che eccita il rele e muove la piattaforma su, il finecorsa interrompe il segnale dal rele al motore (solo il segnale di PIATTAFORMA SU, altrimenti non lo puoi piu muovere giu). Quando spegni il pc arduino si spegne, la tensione dell'uscita digitale cade e il rele si diseccita chiudendo il contatto di PIATTAFORMA GIU, il fine corsa interrompe il segnale dal rele al motore (solo il segnale di PIATTAFORMA GIU, altrimenti non lo puoi piu muovere su).
no il problema e fare in modo che arduino rilevi su un ingresso i 5 volt presi da un usb a attivare il tutto associato alla scheda firgelli perche li su ci sono tutti i controlli del servo.e viceversa.su questa schedafirgelli c'e un controllo apposta per essere associato a schede tipo arduino...per il rele' se hai idee come fare sono bene accette
Logged

Offline Offline
Edison Member
*
Karma: 24
Posts: 2032
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sicuro di aver collegato i 5v ad arduino e la gnd dei 5v ai gnd di arduino?(sarebbe il cavo nero della batteria al gnd di arduino)
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sicuro di aver collegato i 5v ad arduino e la gnd dei 5v ai gnd di arduino?(sarebbe il cavo nero della batteria al gnd di arduino)

si si
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sul sito di modding dove sono iscritto mi hann consigliato questo sketch..
lo scketch andrebbe pure bene...nel senso che ....quando metto i 5 volts sul piedino 4 il servoattuatore va nella posizione di elevatore alzato quindi pistone giu
pero' quando invece la tolgo (i 5 volt  dal piedino 4) questo comincia a fare un loop (su e giu) secondo voi l'errore dove potrebbe essere ?

#include <Servo.h>

Servo myservo;
#define PINCONTROLLO 4
int val;
void setup()
{
myservo.attach(3);
pinMode(PINCONTROLLO, INPUT);
}

// i am trying to me the actuator extend to a certain point and the retract to a certain point
void loop()
{
val = digitalRead(PINCONTROLLO);
if(val == LOW)//pin è spento = pc spento
{
PistoneDown();
}
else
{
PistoneUp();
}
delay(1000);//effettuo polling ogni secondo.



}

void PistoneDown()
{
myservo.write(110);
delay(2000);
myservo.write(80);


}

void PistoneUP()
{
myservo.write(80);
delay(2000);
myservo.write(110);
}




ragazzi vi posto il link del progetto a cui sto lavorando ,mi farebbe piacere se gli deste uno sguardo...

http://www.italiamodding.it/forum/mod-work-progress/3835-creation-rex-mod-15.html#post108118
« Last Edit: September 07, 2012, 01:25:52 pm by t-rex » Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Potrebbe anche darsi che tu non abbia messo una resistenza di pull-down sul pin per dare uno stato Low ben definito quando viene a mancare l'alimentazione del PC, ossia il segnale dei 5V. In questo caso il pin rileva fluttuazioni dello stato del pin che potrebbero portare a letture casuali.
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Potrebbe anche darsi che tu non abbia messo una resistenza di pull-down sul pin per dare uno stato Low ben definito quando viene a mancare l'alimentazione del PC, ossia il segnale dei 5V. In questo caso il pin rileva fluttuazioni dello stato del pin che potrebbero portare a letture casuali.
hai idea del valore?posso provare.....
Logged

Pages: 1 [2] 3   Go Up
Jump to: