Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Is ook niet zozeer tegen jou bedoeld mattie.
Toen ik op tweak kwam kreeg ik vaak te horen dat parallax :
a) overbodig duur is
b) niemand gebruik maakt van pbasic (overigens is dat enkel voor de basicstamp, de propellor heeft meer mogelijkheden schijnt het)
c) en dat iedereen overgestapt is op arduino met c++
d) dat ik beter dit achter me kan laten

Welnu, ik heb nu de mogelijkheid om die twee te vergelijken en ik vind het wel terecht om te vermelden dat parallax in deze opzet iets tekort wordt gedaan.

Misschien is dit iets voor jou, deze Borroz-link wordt mijn volgende projectje wrs :
Verwijderd in "[Discussie] Arduino-topic"

[ Voor 15% gewijzigd door kitao op 29-10-2012 16:30 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Nee dat snap ik :)

Heb zelf geen ervaring met parallax//pbasic, komt ook omdat ik toch al kennis heb van C dusja waarom dan voor iets "nieuws" kiezen :p

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Omdat het bij jou anders verlopen is.
In 2009 zat ik helemaal niet op elektronica-sites en was ik zelfstandig op zoek naar een geschikt micro-platform.
Zonder advies kwam ik uit bij parallax en heb heel geleidelijk een aantal modules gevolgd.
Toen kwam ik hier en bleek dat ik zowat de enige in nederland ben die die route (op laag pitje) heeft gevolgd.
Dat wist ik vantevoren ook niet natuurlijk dus heb ik ook maar de uno erbij gepakt :)

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Hoe erg is het om een 100uF condensator te plaatsen over de reset ipv een 10uF?
Ja ik weet dat het 10x zoveel is. Maar de 10uF heb ik niet liggen, en daar spreken ze over om de auto reset te disablen.
Ik neem aan dat het in deze setting "oplaad" en dan rustig zijn stroom afgeeft, zodat hij nooit een reset krijgt (wordt nooit 0). Dus is het erg dat hij wat langer zijn energie afgeeft??? Of heb ik het helemaal mis? (doe net een paar weken wat met electronica)

mijn pc


Acties:
  • 0 Henk 'm!

  • F.West98
  • Registratie: Juni 2009
  • Laatst online: 01:17

F.West98

Alweer 16 jaar hier

Topicstarter
De TS met een vraag :)
Ik ben nu al enige tijd niet meer bezig met Arduino, ik ben vooral bezig met sitedevelopment. Nu krijgen we voor school binnenkort een opdracht, je moet 2 dagen weg voor colleges bijwonen en je kon meerdere dingen kiezen. Ik koos voor robotje maken, gebaseerd op Arduino.
Dit vindt over een paar weken plaats, en ik moet al wat kennis hebben van het programmeren ermee. Nu heb ik wel wat standaard kennis, maar ik wil graag meer leren.

Wie heeft goede tips om meer ervaring te krijgen?

edit: meer info over het project hier

[ Voor 7% gewijzigd door F.West98 op 30-10-2012 22:17 ]

2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Rusky schreef op dinsdag 30 oktober 2012 @ 18:29:
Hoe erg is het om een 100uF condensator te plaatsen over de reset ipv een 10uF?
Ja ik weet dat het 10x zoveel is. Maar de 10uF heb ik niet liggen, en daar spreken ze over om de auto reset te disablen.
Ik neem aan dat het in deze setting "oplaad" en dan rustig zijn stroom afgeeft, zodat hij nooit een reset krijgt (wordt nooit 0). Dus is het erg dat hij wat langer zijn energie afgeeft??? Of heb ik het helemaal mis? (doe net een paar weken wat met electronica)
Ik heb nog nooit uberhaupt een cap bij de reset geplaatst, al kan het soms nuttig zijn, en maakt niks uit als hij 100uF is.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
@F.West
Je zou dit alvast kunnen doorbladeren.
New to robotics?
No problem! The activities and projects in this text start with an introduction to the BOE Shield-Bot’s brain, the Arduino® Uno. Then, you will build, test, and calibrate the BOE Shield-Bot. Next, you will learn to program the BOE Shield-Bot for basic maneuvers. After that, you’ll be ready to add different kinds of sensors, and write sketches to make the BOE Shield-Bot sense its environment and respond on its own.

New to microcontroller programming?
This is a good place to start! The code examples introduce Arduino programming concepts little by little, with each example sketch explained fully.

[ Voor 77% gewijzigd door kitao op 30-10-2012 23:49 ]


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
furby-killer schreef op dinsdag 30 oktober 2012 @ 22:31:
[...]

Ik heb nog nooit uberhaupt een cap bij de reset geplaatst, al kan het soms nuttig zijn, en maakt niks uit als hij 100uF is.
Ik probeer een serial connection via php te maken. Dit lukte niet erg goed. Toen ik op inet zocht zag ik dat hij zichzelf reset wanneer je een connectie maakt en ook als je verbreekt. Zelfs een simpel ledje kreeg ik niet werkend.
Bij de Uno was de oplossing om een condensator over de reset en de ground te zetten.
Alleen bij het uploaden en connecten van de usb moet deze er even uit, anders doet hij niks.

BTW: is het beter om via Processing de serial aan te spreken van Andruino? Of gewoon rechtstreeks vanuit php? Ik zie dat beide kan, en zie niet echt voordelen en nadelen. (arduino en php server (xamp) staan op 1 pc met windows 7 64-bit)
Ik wil een heel pril home domotica systeem proberen te maken, en deze uit wil breiden met allerlei funny stuf.

[ Voor 20% gewijzigd door Rusky op 31-10-2012 08:23 ]

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
F.West98 schreef op dinsdag 30 oktober 2012 @ 22:05:
De TS met een vraag :)
Ik ben nu al enige tijd niet meer bezig met Arduino, ik ben vooral bezig met sitedevelopment. Nu krijgen we voor school binnenkort een opdracht, je moet 2 dagen weg voor colleges bijwonen en je kon meerdere dingen kiezen. Ik koos voor robotje maken, gebaseerd op Arduino.
Dit vindt over een paar weken plaats, en ik moet al wat kennis hebben van het programmeren ermee. Nu heb ik wel wat standaard kennis, maar ik wil graag meer leren.

Wie heeft goede tips om meer ervaring te krijgen?

edit: meer info over het project hier
Ik kan je maar 1 echt goede tip geven:

Ga er mee kloten!

Echt serieus, je kan zoveel dingen lezen maar als je het niet zelf doet "werkt" het gewoon niet. Als je het doet dan krijg je ook écht door WAAROM en HOE het werkt zoals ze zeggen dat het werkt :)

(althans dat is mijn mening...)


@Rusky

Waarom is het een probleem als hij reset? Ik heb het hier ook, zodra ik een serial connectie open zet reset ie vanzelf maar in principe hoef je dat maar 1x te doen :) Zie het gewoon alsof je robot opstart. Zodra je eenmaal de connectie hebt zou hij niet meer moeten resetten.

O en volgens een post op het arduino forum kan het ook met 220uf
I seem to have solved it for the moment by adding a capacitor between the reset pin and the ground. I figured that with the resistor keeping the reset line up, the added capacitor maybe add enough oomph to keep the line up.

It did. I used 220 uF as it was the only one I had laying around, but I expect that a much smaller capacitor works as well.

Thanks for the responses.
http://arduino.cc/forum/index.php/topic,28723.0.html

[ Voor 28% gewijzigd door Mattie112 op 31-10-2012 08:43 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

Verwijderd

Rusky schreef op woensdag 31 oktober 2012 @ 07:44:
[...]


Ik probeer een serial connection via php te maken. Dit lukte niet erg goed. Toen ik op inet zocht zag ik dat hij zichzelf reset wanneer je een connectie maakt en ook als je verbreekt. Zelfs een simpel ledje kreeg ik niet werkend.
Bij de Uno was de oplossing om een condensator over de reset en de ground te zetten.
Alleen bij het uploaden en connecten van de usb moet deze er even uit, anders doet hij niks.

BTW: is het beter om via Processing de serial aan te spreken van Andruino? Of gewoon rechtstreeks vanuit php? Ik zie dat beide kan, en zie niet echt voordelen en nadelen. (arduino en php server (xamp) staan op 1 pc met windows 7 64-bit)
Ik wil een heel pril home domotica systeem proberen te maken, en deze uit wil breiden met allerlei funny stuf.
Het werkt ook zonder die condensator.

Ik heb ook php gebruikt om waarden via serial connection naar de arduino te schrijven. Het werkt op zich goed alleen moet ik om 1 of andere reden als ik de arduino op nieuw op mijn computer aansluit of als mijn computer opnieuw is opgestart altijd eerst even via de arduino IDE de serial monitor openen en daar een paar waardes invoeren.

Als ik vervolgens de serial monitor afsluit kan ik via mijn php pagina op een wamp server de arduino opdrachten sturen.


PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$fp =fopen("com9", "w");

if (!empty($_POST["lamp1"])){

  if ($_POST["lamp1"]=="aan"){
      $i='3';
      fwrite($fp, chr($i));
  }

  if ($_POST["lamp1"]=="uit"){
      $i='4';
      fwrite($fp, chr($i));
  }
}

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Verwijderd schreef op woensdag 31 oktober 2012 @ 09:12:
[...]

Het werkt ook zonder die condensator.

Ik heb ook php gebruikt om waarden via serial connection naar de arduino te schrijven. Het werkt op zich goed alleen moet ik om 1 of andere reden als ik de arduino op nieuw op mijn computer aansluit of als mijn computer opnieuw is opgestart altijd eerst even via de arduino IDE de serial monitor openen en daar een paar waardes invoeren.

Als ik vervolgens de serial monitor afsluit kan ik via mijn php pagina op een wamp server de arduino opdrachten sturen.


PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$fp =fopen("com9", "w");

if (!empty($_POST["lamp1"])){

  if ($_POST["lamp1"]=="aan"){
      $i='3';
      fwrite($fp, chr($i));
  }

  if ($_POST["lamp1"]=="uit"){
      $i='4';
      fwrite($fp, chr($i));
  }
}
Ik heb geen idee waarom ik die autoreset uit wil hebben. Ik heb een avond gestoeid zonder en niks werkte. Dus ben ik verder gaan kijken, en toen zag ik die oplossing met die condensator.
Maar misschien is ook het probleem dat ik de connectie weer afsloot in de php nadat ik wat had geschreven? Dan resette de andruino weer.
PHP:
1
fclose($fp);

Als ik bovenstaande bekijk, laat de je de connectie gewoon open staan.
Donderdag avond maar weer eens proberen.

mijn pc


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Verwijderd schreef op woensdag 31 oktober 2012 @ 09:12:
[...]

Het werkt ook zonder die condensator.
Ligt eraan welke arduino je hebt. Bij de uno is het wel nodig.
Wat je ook kunt doen is een bepaalde soldeerjumper (volgens mij is ie gemarkerd met "reset-en") doorkrassen, dan disable je de auto-reset functie. Betekent dus wel dat je dan zelf de resetknop moet bedienen als je programma's wilt uploaden.

Acties:
  • 0 Henk 'm!

Verwijderd

Nee ik gebruik zelf ook de uno, die reset wel als ik via de arduino IDE eerst de serial monitor open, maar daarna als ik via de site er data naar stuur niet meer.
Rusky schreef op woensdag 31 oktober 2012 @ 09:41:
[...]


Ik heb geen idee waarom ik die autoreset uit wil hebben. Ik heb een avond gestoeid zonder en niks werkte. Dus ben ik verder gaan kijken, en toen zag ik die oplossing met die condensator.
Maar misschien is ook het probleem dat ik de connectie weer afsloot in de php nadat ik wat had geschreven? Dan resette de andruino weer.
PHP:
1
fclose($fp);

Als ik bovenstaande bekijk, laat de je de connectie gewoon open staan.
Donderdag avond maar weer eens proberen.
Ik sluit hem verderop in mijn code ook maar dat had ik er alleen niet bij gezet omdat dit maar een stukje van mijn code is maar het werkt wel bij mij.

[ Voor 3% gewijzigd door Verwijderd op 31-10-2012 10:57 ]


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Verwijderd schreef op woensdag 31 oktober 2012 @ 10:56:
Ik sluit hem verderop in mijn code ook maar dat had ik er alleen niet bij gezet omdat dit maar een stukje van mijn code is maar het werkt wel bij mij.
Dan ga ik eerst maar eens stoeien zonder die condensator op de auto reset. Want als dat niet hoeft dan liever niet. Dan horen jullie wel weer van me mocht het niet lukken (donderdag avond ws)
Heb btw ook de Uno (rev3)

mijn pc


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
@Matti
Ben wel met je eens hoor, met alleen maar lezen kom je weinig verder. Maar F. vroeg om een site waar meteen het robot-gedeelte en het bijbehorende programmeren werd uitgelegd. Jij kent al goed C, uit zijn post bleek (volgens mij) dat hij nog niet zover is. En dan om allebei tegelijk specifiek op robots gericht onder de knie te krijgen heb ik die link gegeven (waar ik zelf nog niet aan toe ben gekomen overigens).
Net als F. ben ik namelijk ook best wel benieuwd waar iets soortgelijks nog meer te vinden is.
Natuurlijk heb je arduino learning maar als je snel een robot wil opbouwen dan tref je daar enkel losse stukjes aan zoals bedienen servo, display, ping enzovoort. Het is dan mss lastig om dit in korte tijd op één wagentje te integreren zeker als de taal C nog niet helemaal duidelijk is.
Maar jouw advies is zeker waar. :)

Acties:
  • 0 Henk 'm!

  • _ferry_
  • Registratie: Januari 2002
  • Niet online

_ferry_

Moderator Tweaking

Nipple Tweaker

Ik heb een simpele pH regeling gemaakt met de arduino voor mijn aquarium. Maar na elke stroomuitval moet ik de pH opnieuw instellen, terwijl dit voorheen volgens mij wel gewoon bewaard bleef. (Al een jaar terug gemaakt, en de spanning valt niet dagelijks uit...)

Nu had ik dit er in, om te voorkomen dat de eeprom onnodig veel beschreven werd:
C:
1
2
3
4
5
  byte a = phset;
  byte b = pheeprom;
  if (byte(a) != byte(b)) {
  EEPROM.write(pheeprom,byte(a));
  }

Moet werken toch? Anders kan het nog verklaren waarom het niet werkt, want dan is het 2x per seconde overschreven en zal hij het max. aantal writes wel hebben gehaald, en is het stuk.

Als hij start leest hij als eerste de waarde uit het eeprom geheugen;
C:
1
2
void setup() {
phset = EEPROM.read(pheeprom); //read last ph setpoint 

En als het niet werkt zet ik de waarde wel gewoon vast. Weet nu wat een goeie waarde is, en veranderen doe ik hem toch niet zo gauw. Beetje irritant als ie volle bak blijft doseren na spanningsuitval.

[ Voor 3% gewijzigd door _ferry_ op 01-11-2012 22:43 ]


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Mijn eerste idee was hoe de fuck je door je write cycles van je eeprom heen komt, die heeft er nogal wat. Hoe verander je die phset? Logische optie lijkt mij gewoon direct als phset verandert wordt het naar het eeprom te schrijven, maar dat is blijkbaar geen knopje ofzo?

Misschien mis ik nu iets van Arduino, maar je schrijft je nieuwe ph settings in een locatie die gegeven wordt door je oude ph settings? En waarom converteer je a en b naar byte, terwijl je ze net als byte had gedefinieerd?
Lijkt mij dat iig byte b gelijk moet zijn aan EEPROM.read(pheeprom), ipv aan pheeprom. Nu schrijf je wel vaak een nieuwe pH waarde weg, gezien dat hij controleert of je phSet gelijk is aan het geheugenadres waar je ph op het eeprom is opgeslagen.

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
een jaar heeft 31536000 secondes, als dat ding 2 jaar lang iedere 2 seconden een write doet, is het een wonder dat het nog werkt.

Acties:
  • 0 Henk 'm!

  • D-Three
  • Registratie: Oktober 2001
  • Laatst online: 19:34
Waarom zou je in godsnaam 2x per seconde iets in de eeprom willen schrijven? ;) Controleer gewoon de voedingsspanning en genereer een interrupt die de data in de eeprom wegschrijft zodra de voedingsspanning onder een bepaald niveau komt (= eventuele spanningsuitval).

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Volgensmij wil hij ook juist NIET de waarde wegschrijven. Hij kijkt alleen of de waarde van zijn eeprom overeenkomt met wat hij wil en zo nee => schrijf naar eeprom.
Waarom het niet werkt, geen idee.

En dan even een vraagje tussendoor van mijn kant. Niet echt arduino gerelateerd maar om er nou een topic voor te openen....

Ik heb een capacitator 2.7volt 20Farad (ja, 20 ja). Mijn input spanning is 6 volt. Wat voor weerstand moet ik dan voor de capacitator zetten om hem niet op te blazen?

Voor een LED kan ik het inmiddels uitrekenen maar iets zegt me dat dat vast anders zal zijn voor een capacitator :)

(en sowieso, hoe "gevoellig" zijn deze dingen? 2.7 volt is dat echt zn max of kan ie ook wel 3volt aan bijv?)

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Oneindig ohm. Het kost een tijdje, maar uiteindelijk zal hij via die weerstand hem gewoon tot 6V opladen. Je kan een weerstandsdeler gebruiken wel om hem tot niet verder dan 2.7V te laten gaan, maar waarvoor gebruik je dat ding uberhaupt?

Acties:
  • 0 Henk 'm!

Verwijderd

Ik ben bezig met de onderstaande code die een IR signaal kan ontvangen (wat ik ook zelf met een andere arduino verstuur).

In de loop moeten nog meer dingen gebeuren maar hij schrijft nu slechts om de seconde een nohit! naar de serial.

Waar zit de vertraging in mijn code? normaal gesproken moet hij toch na de return gewoon meteen door in de loop en dus weer naar de senseHit gaan?


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
boolean hit = false;

int user[5];
int end;
  
int Irecpin = 5;                         //IRSensor pin OUT
int downtime = 2000;                     //time person is deactivated when hit
int one = 1000;                          //Binary 1 threshold (Microseconds)
int zero = 400;                          //Binary 0 threshold (Microseconds)
int startBit = 2200;                     //Startbit treshold
int endBit = 2200;                       //Endbit treshold
int myHits = 0;                          //Times you have been hit


void setup() {
 pinMode(Irecpin, INPUT);
 Serial.begin(9600);
 Serial.println("Start Programma");
}

void loop() {  
  
  if (hit == true){
    myHits++;
    delay(downtime);
    hit = false;
  }
  senseHit();  
}


void senseHit() {

  if(pulseIn(Irecpin, LOW) < 2500) {   //Wait for a start bit
    hit = false;
    Serial.println("nohit!");
    return;
  }
    
    Serial.print("Nieuw getal ontvangen:");
    user[0] = pulseIn(Irecpin, LOW);       //Start measuring bits, I only want low pulses
    user[1] = pulseIn(Irecpin, LOW); 
    user[2] = pulseIn(Irecpin, LOW);
    user[3] = pulseIn(Irecpin, LOW);
    user[4] = pulseIn(Irecpin, LOW);
    end     = pulseIn(Irecpin, LOW);
    for(int i=0;i<=4;i++) {               //Parse them
      Serial.print(user[i]);
      if(user[i] > one) {                 //is it a 1?
        user[i] = 1;
        Serial.println(" = 1");
      }else if(user[i] > zero){           //is it a 0?
        user[i] = 0;
        Serial.println(" = 0");
      }else{
        user[i] = 2;                     //Flag the data as invalid; I don't know what it is!
        Serial.print("=  error \n");
      }
    }
    if (end <= endBit) {
      Serial.print(end);
      Serial.println(" : bad end bit");
      return;
    }
}

Acties:
  • 0 Henk 'm!

  • _ferry_
  • Registratie: Januari 2002
  • Niet online

_ferry_

Moderator Tweaking

Nipple Tweaker

Mattie112 schreef op vrijdag 02 november 2012 @ 10:34:
Volgensmij wil hij ook juist NIET de waarde wegschrijven. Hij kijkt alleen of de waarde van zijn eeprom overeenkomt met wat hij wil en zo nee => schrijf naar eeprom.
Dat dus, daarvoor had ik de vergelijking gemaakt tussen setpoint en weggeschreven waarde. :)

phset is de setpoint, die kan ik dus variëren met een up en down knopje. Maar als dit niet fatsoenlijk werkt laat ik het wel achterwege, of stel bij de startup de pH waarde op een normale waarde IPV lezen uit het eeprom.
Al heb ik dan alsnog niet geleerd hoe ik het eeprom correct gebruik. Vorodat ik dit stukje programme schreef had ik er nog helemaal geen kennis van qua eeprom, volgens mij heb ik toen die vergelijking uit een stukje voorbeeldcode gehaald.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Het kan prima werken, maar niet zoals het nu er staat. Maar dat is zo te fixen, dus ik zie niet waarom je het achterwege zou laten.

Ook lijkt het me nog steeds makkelijker om gewoon zodra je je up/down knopje gebruikt het direct naar het eeprom te schrijven. Dan kan je 100k keer op dat knopje drukken.

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
furby-killer schreef op vrijdag 02 november 2012 @ 11:54:
Oneindig ohm. Het kost een tijdje, maar uiteindelijk zal hij via die weerstand hem gewoon tot 6V opladen. Je kan een weerstandsdeler gebruiken wel om hem tot niet verder dan 2.7V te laten gaan, maar waarvoor gebruik je dat ding uberhaupt?
Ik gebruik (althans ik wil hem gebruiken) voor de lol :p Dus eigenlijk komt het er op neer dat met een spanning van 6v je dat ding niet kan gebruiken?

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
ok ... na een hoop gepruts lukt het me niet, en heb geen idee.

mijn php code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
<body>
<form action="index.php" method="post">
<button type="submit" name="lamp" value="1">Lamp aan</button>
<button type="submit" name="lamp" value="0">Lamp uit</button>
</body>
</html>

<?php
    $i = $_POST['lamp'];
    $fp = fopen("com3", "w");

    if ($i=="1") {
        fwrite($fp, chr($i));
        echo $i, "&nbsp;lamp aan";
    } else {
        fwrite($fp, chr($i));
        echo $i, "&nbsp;lamp uit";
    }  
    fclose($fp); 
?>


en mijn arduino code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int ledPin = 13;
int incomingByte;

void setup()
{
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
}
void loop()
{
  if (Serial.available() > 0)
  {  
    incomingByte = Serial.read();
    if (incomingByte ==  '0') {
      digitalWrite(ledPin, LOW);
      delay(1000);
    }
    if (incomingByte ==  '1') {
      digitalWrite(ledPin, HIGH);
      delay(1000);
    }
  }
}


bedoeling: led op poort 13 van arduino aan en uit zetten dmv de button op de php pagina.

Probleem: ik zie wel de RX led knipperen (1x) maar me led gaat niet aan.
heb ooit ergens een serial monitor gezien die zegmaar altijd kan kijken wat je stuurt, maar kan die niet meer vinden? Want de serial monitor van arduino blokkeert de php connectie (heel iritant).

Dit is zonder dat de auto-reset is geblokkeerd (waar ik het eerder over had), aangezien jullie zeiden dat dat niet hoefde :-)
edit: na het blokkeren van de auto-reset doet hij het nog niet ...

mijn pc


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Op deze manier is het waarschijnlijk wel handig om autoreset te blokkeren. Dat de arduino serial monitor de php blokkeert is logisch, die opent gewoon een verbinding met de COM-poort van de arduino en een ander programma mag die dan niet meer gebruiken. Al zijn er idd vast programmas die enkel luisteren.

Heb je al gekeken of hij het wel doet als je met de arduino monitor de data maakt?

Edit: wat als je een delay van een paar seconde toevoegd aan je PHP script voordat hij hem verstuurd nadat de COM-poort is geopend?

[ Voor 14% gewijzigd door Sissors op 04-11-2012 12:35 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Heeft er iemand met een infrarood sensor (PIR)?

Ik heb er eentje om beweging te detecteren en deze voorbeeldcode gebruikt;

http://www.arduino.cc/playground/Code/PIRsense

Alleen volgesmij doet ie geen donder:
calibrating sensor .............................. done
SENSOR ACTIVE
---
motion detected at 30 sec
Ik kan zwaaien wat ik wil maar hij doet niks meer dan dit!

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
ok .. heb nu ff een serial port monitor in de spy mode gezet (Advanced Serial Port Monitor)
Wanneer ik de data als chr($i) verstuur zie ik als data "SOH" (als 1) en "NUL" (als 0).
wanneer ik die chr() weglaat zie ik netjes een 1 en een 0 verschijnen.

.... eerst deed deze het niet, maar heb hem nu wel te pakken, na een paar keer updarten / refreshen ed.
gaat hij netjes aan en uit :-)
Nu een sleep(0.5); toegevoegt (delay van 1/2sec.) in de php.
Helemaal super !

hierbij de uiteindelijke code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<html>
<body>
<form action="index.php" method="post">
<button type="submit" name="lamp" value="1">Lamp aan</button>
<button type="submit" name="lamp" value="0">Lamp uit</button>
</body>
</html>

<?php
    $i = $_POST['lamp'];
    $fp = fopen("com3", "w");

    sleep(0.5);

    if ($i=="1") {
        fwrite($fp, $i);
        echo $i, "&nbsp;lamp aan";
    } else {
        fwrite($fp, $i);
        echo $i, "&nbsp;lamp uit";
    }  
    fclose($fp); 
?>


arduino
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int ledPin = 13;
int incomingByte;

void setup()
{
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
}
void loop()
{
    incomingByte = Serial.read();
    if (incomingByte ==  '0') {
      digitalWrite(ledPin, LOW);
      delay(1000);
    }
    if (incomingByte ==  '1') {
      digitalWrite(ledPin, HIGH);
      delay(1000);
    }
  }


iets raars: eerst doet hij het niet nadat ik een code in de arduino ingeladen heb. Maar nadat ik de serial monitor open en dicht heb gedaan (zonder iets te versturen) doet hij het ineens :?

[ Voor 6% gewijzigd door Rusky op 04-11-2012 16:20 ]

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Mattie112 schreef op zondag 04 november 2012 @ 15:49:
Heeft er iemand met een infrarood sensor (PIR)?

Ik heb er eentje om beweging te detecteren en deze voorbeeldcode gebruikt;

http://www.arduino.cc/playground/Code/PIRsense

Alleen volgesmij doet ie geen donder:


[...]


Ik kan zwaaien wat ik wil maar hij doet niks meer dan dit!
Ok ik heb wat gevonden. http://www.ladyada.net/learn/sensors/pir.html Daar laten ze zien hoe je een PIR sensor aansluit zonder arduino :) en dan werkt het perfect!

Ik kwam er achter dat de digitalread een beetje vaag doet (althans dat denk ik :p)

Dit is de output met ALLEEN een draad in PIN3 (dus niks aangesloten, alleen een LOSSE draad)
1601: 0
1602: 0
[,,,]
1625: 0
1626: 0
1627: 1
1628: 1
[,,,]
1647: 1
1648: 1
1649: 0
1650: 0
[,,,]
1672: 0
1673: 0
(hij doet dus elke 100ms een digitalread)

Hoe de *** is dit mogelijk? De draad zit nergens aan vast dus hoe kan deze dan "1" worden????

[ Voor 22% gewijzigd door Mattie112 op 04-11-2012 16:43 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Zwevende ingangen enzo, gevoelig voor stoorvelden, menselijk lichaam, statisch gedoe enz. ?

Ik ben nog steeds bezig met lcd's trouwens, nu wilde ik de seriele parallax op de uno aansluiten, valt me op dat je voor iedere lcd zo'n beetje een apart programma nodig hebt :
http://www.arduino.cc/playground/Code/LCD

Is dat echt nodig of kan dit simpeler ? Ps, dit is een algemeen vraagje, ik heb zelf nog niet erg lang gezocht en verwacht ook geen uitgebreide uitleg :)

[ Voor 68% gewijzigd door kitao op 04-11-2012 16:54 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Ja geen idee.... Maar hoe los ik het op ;p Zit al wat te proberen met weerstanden op bepaalde plekken maar dan blijft hij 0 (indien naar ground) of 1 (indien naar 5v)

Iemand enig idee hoe dat precies met digitalread zit?

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Ik weet wel dat er drempelspanningen zijn, onder de 1,4V is 0 en daarboven 1 meen ik.
Sorry, meer kan ik er ook niet over zeggen, ik ken jouw schakeling niet.

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Afbeeldingslocatie: http://www.ladyada.net/wiki/lib/exe/fetch.php?hash=018335&w=600&h=356&media=http%3A%2F%2Fwww.ladyada.net%2Fimages%2Fsensors%2Fpirardbb.gif

Maar dan PIN3 ipv pin2 maar dat maakt niks uit ofc :)

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • BocraM
  • Registratie: December 2005
  • Laatst online: 11-07-2022
Je hebt dus wel 3 draden aangesloten? Eerst had je het over alleen pin 3.
Je hebt het aangesloten zoals op de afbeelding, en draait de sketch die onderaan de pagina staat? Je hebt wel inputPin naar 3 veranderd?

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Het gaat om beide situaties. Maar met name wanneer de infrarood sensor aangesloten is. Dan werkt het dus niet.

En ja de pin is veranderd in de code. Hij wisselt gewoon de hele tijd tussen 0 en 1....

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Mr_gadget
  • Registratie: Juni 2004
  • Laatst online: 11-09 21:52

Mr_gadget

C8H10N4O2 powered

Kan zijn dat die pir niet goed is afgesteld en dus op veel reageert. Misschien ook inkoppeling van een TL lamp? Maar met een draad op de digital in lees je al nullen en enen? Wat als je hem op de 5 volt of ground aansluit? Neem aan dat hij dan constant is?

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Misschien heel stom, maar geef je hem 30 sec de tijd om in te stellen als zijnde de nul situatie? Als je volgens mij binnen deze tijd begint met zwaaien, zal hij dit ook als nul situatie zien.

Ook zeggen ze in het begin dat het normaal is dat hij wisselt met 1 en 0 maar dit wordt binnen een bepaalde tijd hoog gehouden.

En de reactie die hij geeft, zegt toch netjes wanneer hij een beweging ziet?

[ Voor 36% gewijzigd door Rusky op 04-11-2012 18:58 ]

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Hm ik durf te zweren dat ik al gereplyed had....

naja komt ie nog een keer:

Ja ik geef hem genoeg tijd, een minuut voordat ie nummertjes gaat printen. Binnen die tijd "kijkt" de sensor de andere kant op dus hij ziet geen beweging"

Het probleem is juist dat hij "random" 1 en 0 output of er nou wel of geen beweging is. Het lijkt wel alsof de sensor gewoon niks doet zegmaar. Evt kan ik wel even een wat langere output hier laten zien.

@Mr_gadget
Ja als ik hem op GND of 5V aansluit is hij wel constant. TL verlichting is hier niet trouwens en de truc om de sensor ZONDER arduino op een paar batterijen en een LED aan te sluiten werkt wel perfect dus het heeft echt met de arduino te maken.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Mattie112 schreef op maandag 05 november 2012 @ 08:10:
Ja ik geef hem genoeg tijd, een minuut voordat ie nummertjes gaat printen. Binnen die tijd "kijkt" de sensor de andere kant op dus hij ziet geen beweging"
Maar de sensor maakt toch een "beeld" van de nul situatie? Dus als je hem omdraait "ziet" hij een andere omgeving.
Wat als je hem omgedraait laat staan, en dan je hand ervoor houdt?

mijn pc


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Zie je nu dus hetzelfde onafhankelijk van of je wel of niet de PIR hebt aangesloten? Dan zou ik denken dat je naar de verkeerde pin aan het kijken bent.
Welke PIR sensor heb je?

@Rusky, je kan nog kijken of het wat stabieler gaat als je die compoort open laat, ipv steeds sluit en opent.

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
furby-killer schreef op maandag 05 november 2012 @ 08:25:
@Rusky, je kan nog kijken of het wat stabieler gaat als je die compoort open laat, ipv steeds sluit en opent.
Ik zal er eens naar kijken.
Belangrijker is dat ik ff moet gaan kijken hoe ik meerdere bits verstuur over de serial. Want als ik deze uit wil breiden wordt het wel erg irritant met die nr's. Dus ik moet zoeits krijgen als red1 (is rood aan) en red0 (is rood uit).
Ik heb nu wel drie ledjes aan/uit. Maar dat is genummerd van 0 t/m 5

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Rusky schreef op maandag 05 november 2012 @ 08:17:
[...]


Maar de sensor maakt toch een "beeld" van de nul situatie? Dus als je hem omdraait "ziet" hij een andere omgeving.
Wat als je hem omgedraait laat staan, en dan je hand ervoor houdt?
O sorry, met "de andere kant" bedoel ik dat hij niet naar mij kijkt en dus geen beweging ziet. Ik laat hem op exact dezelfde manier liggen en ik beweeg mn hand ervoor maar de output blijft gewoon hetzelfde. En ik kijk toch echt naar de goeie pin want als ik de draad even aan de GND hang blijft ie keurig altijd 0.

Zou het dan toch kunnen zijn dat die pin "zweeft" zegmaar? Heb al zitten kloten met weerstanden maarja dan is het of 0 (indien GND) of 1 (indien 5v)

@furby-killer
En ja, zonder de sensor aangesloten te hebben zie ik ook random 1 en 0 voorbij komen maar dat kan kloppen omdat de pin dan "zweeft". Ik heb wel het idee dat hij stabieler is wanneer ik de sensor aansluit.

Het is trouwens deze:
http://samenkopen.net/action_product/726132/626036

Is het misschien handig als ik even een foto maak en dan laat zien hoe ik hem precies heb aangesloten (hoewel... dat schema wat ik gister postte laat precies zien hoe hij aangesloten is).

Nogmaals dus met een paar batterijen + op + - op - en dan de signaal output een LED (die weer naar GND) dat werkt wel op die manier.

Zo dus:

Afbeeldingslocatie: http://www.ladyada.net/wiki/lib/exe/fetch.php?hash=e8c1e8&w=500&h=292&media=http%3A%2F%2Fwww.ladyada.net%2Fimages%2Fsensors%2Fpirtestsch.gif

Afbeeldingslocatie: http://www.ladyada.net/wiki/lib/exe/fetch.php?hash=a97008&w=600&h=335&media=http%3A%2F%2Fwww.ladyada.net%2Fimages%2Fsensors%2Fpirtestbb.gif

[ Voor 4% gewijzigd door Mattie112 op 05-11-2012 08:52 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Ik ga dan toch de gok doen dat je naar de verkeerde pin kijkt.

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
En mag ik nog eens gokken? Ik denk dat hij wel een signaal naar arduino stuurt, maar dat deze niet hoog wordt gehouden, omdat er niet continu beweging is. Dus beweging = 1 geen beweging = 0, en deze gaat continu heen en weer, en wordt niet met een buffer hoog gehouden.
Dus dit inbouwen in arduino?

mijn pc


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Je mag altijd gokken :P, maar dan zou hij wel constant 0 (of 1, afhankelijk of ie hoog of laag actief is) moeten zien wanneer hij geen beweging ziet. Normaal blijft hij ook even actief als hij beweging ziet (met variabele delay).

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
@furby-killer:

Helaas kijk ik toch echt NIET naar de verkeerde pin. Als ik hem loshaal van de sensor en aan de GND koppel dan blijft hij 0, koppel ik hem aan de 5V dan blijft hij 1. maw: ik weet 100% zeker dat ik de goede pin uitlees.

@rusky

Moeten we voor gokken geen vergunning aanvragen :p Ook dit moet ik helaas ontkennen. Wanneer ik de truc ZONDER arduino doet (met een LED dus) blijft de LED na beweging nog ca 5 seconden aan (dit kan ik instellen met een potmetertje). En zolang dus de led brand moet de uitgang wel "hoog" zijn.

Verder is het gewoon té random! als er dus 100% totaal geen beweging is komen er nog 1'nen en 0'len terug. Ik zal vanmiddag thuis even een langerstukje output laten zien waarbij ik niets doe.

@furby-killer

Wat jij zegt klopt inderdaad.

Ik kan ook even een arduino van een vriend lenen om even uit te sluiten dat het aan mn hardware ligt :p

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Probeer anders eens de sensor aparte voeding te geven met batterij (wel grounds doorverbinden). Of kijk wat hij doet met de LED als je de arduino voeding gebruikt.

Acties:
  • 0 Henk 'm!

  • BocraM
  • Registratie: December 2005
  • Laatst online: 11-07-2022
De sketch op de arduino laat de LED op pin 13 exact hetzelfde doen als de LED in de setup zonder arduino.
Als ik je goed begrijp:
-Is de LED aan als je op je sensorpin (3) 5V zet
-Is de LED uit als je de sensorpin aan 0V hangt
-Is de LED random aan en uit als je de PIR-uitgang aan je sensorpin hangt (of er nu beweging is of niet)
-Werkt de PIR wel zoals het hoort als je hem zonder arduino gebruikt

Dan kan het alleen maar aan je bedrading liggen (of voeding, maar dat lijkt me onwaarschijnlijk). Dubbelcheck of je sensoruitgang goed contact maakt met je sensorpin op de arduino. En check vooral of de 5V en ground van de sensor en arduino met elkaar verbonden zijn.

Wat ook kan helpen qua debuggen is je opstelling dubbel bouwen. Je bouwt de schakeling met de arduino. In plaats van de sensor-uitgang direct aan pin 3 te hangen plug je deze in een breadboard. Daar splits je deze uitgang op:
- 1 draad naar de arduino-ingang (pin 3)
- 1 draad naar een LED met +- 300 ohm weerstand erachter naar ground (dezelfde ground als de arduino en de sensor dus!)

Met deze opstelling moet de LED op pin 13 precies hetzelfde doen als de LED op je breadboard (en dus ook allebei oplichten wanneer dat hoort). Mocht dat niet zo zijn, beschrijf dan wat er wel gebeurt.

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Bedankt voor de tips! Ik zal het vanmiddag even uitproberen.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Pft ik begin nu toch wel te denken dat ik echt iets "basis" fout doe.

Ik heb het nu als volgt:

Afbeeldingslocatie: http://upload.mattie-systems.nl/uploads/75517-untitled_sketch_bb.jpg

De LED gekoppeld aan de sensor KNIPPERT, de waarde die mn code uitleest is constant 0.

Mijn code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/* 
 * //////////////////////////////////////////////////
 * //making sense of the Parallax PIR sensor's output
 * //////////////////////////////////////////////////
 *
 * Switches a LED according to the state of the sensors output pin.
 * Determines the beginning and end of continuous motion sequences.
 *
 * @author: Kristian Gohlke / krigoo (_) gmail (_) com / http://krx.at
 * @date:   3. September 2006 
 *
 * kr1 (cleft) 2006 
 * released under a creative commons "Attribution-NonCommercial-ShareAlike 2.0" license
 * http://creativecommons.org/licenses/by-nc-sa/2.0/de/
 *
 *
 * The Parallax PIR Sensor is an easy to use digital infrared motion sensor module. 
 * (http://www.parallax.com/detail.asp?product_id=555-28027)
 *
 * The sensor's output pin goes to HIGH if motion is present.
 * However, even if motion is present it goes to LOW from time to time, 
 * which might give the impression no motion is present. 
 * This program deals with this issue by ignoring LOW-phases shorter than a given time, 
 * assuming continuous motion is present during these phases.
 *  
 */

/////////////////////////////
//VARS
//the time we give the sensor to calibrate (10-60 secs according to the datasheet)
int calibrationTime = 60;        

//the time when the sensor outputs a low impulse
long unsigned int lowIn;         

//the amount of milliseconds the sensor has to be low 
//before we assume all motion has stopped
long unsigned int pause = 5000;  

boolean lockLow = true;
boolean takeLowTime;  

int pirPin = 3;    //the digital pin connected to the PIR sensor's output
int ledPin = 13;

int teller = 0;

/////////////////////////////
//SETUP
void setup(){
  Serial.begin(9600);
  pinMode(pirPin, INPUT);
 // digitalWrite(pirPin, HIGH);
  pinMode(ledPin, OUTPUT);
  digitalWrite(pirPin, LOW);

  //give the sensor some time to calibrate
  Serial.print("calibrating sensor ");
    for(int i = 0; i < calibrationTime; i++){
      Serial.print(".");
      delay(1000);
      }
    Serial.println(" done");
    Serial.println("SENSOR ACTIVE");
    delay(50);
  }

////////////////////////////
//LOOP
void loop(){
  
  teller++;
  int bla = digitalRead(pirPin);
  Serial.print(teller);
  Serial.print(":  ");
  Serial.println(bla);
    delay(100);
  

     if(digitalRead(pirPin) == HIGH){
       digitalWrite(ledPin, HIGH);   //the led visualizes the sensors output pin state
       if(lockLow){  
         //makes sure we wait for a transition to LOW before any further output is made:
         lockLow = false;            
         Serial.println("---");
         Serial.print("motion detected at ");
         Serial.print(millis()/1000);
         Serial.println(" sec"); 
         delay(50);
         }         
         takeLowTime = true;
       }

     if(digitalRead(pirPin) == LOW){       
       digitalWrite(ledPin, LOW);  //the led visualizes the sensors output pin state

       if(takeLowTime){
        lowIn = millis();          //save the time of the transition from high to LOW
        takeLowTime = false;       //make sure this is only done at the start of a LOW phase
        }
       //if the sensor is low for more than the given pause, 
       //we assume that no more motion is going to happen
       if(!lockLow && millis() - lowIn > pause){  
           //makes sure this block of code is only executed again after 
           //a new motion sequence has been detected
           lockLow = true;                        
           Serial.print("motion ended at ");      //output
           Serial.print((millis() - pause)/1000);
           Serial.println(" sec");
           delay(50);
           }
       }
  }


Zodra ik die LED weghaal (en dus de connectie met de GND) krijg ik weer variabele waardes te zien.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 10-09 15:29

Armageddon_2k

Trotse eigenaar: Yamaha R6

Mattie112 schreef op maandag 05 november 2012 @ 16:01:
Pft ik begin nu toch wel te denken dat ik echt iets "basis" fout doe.
Mattie, vergeet niet dat een PIR sensor een calibratie tijd nodig heeft.
Dus je PIR zal onegveer een minuut nodig hebben voor hij "Werkt".
De eerste minuut heeft het geen zin om er waarden uit te halen.

Dit zie je als het goed is ook terug in de code die je hebt gepost.

Je hoeft niet te werken met een pulldown weerstand. Ik heb zelf ook een PIR (van deal extreme).

Ik zou het aansluiten zoals eerder gepost en dan met de PIR parallax code die je net gepost hebt.
Gooi ook je serial monitor even open. Dan kan je precies zijn waar je arduino mee bezig is.

Afbeeldingslocatie: http://www.ladyada.net/wiki/lib/exe/fetch.php?hash=018335&w=600&h=356&media=http%3A%2F%2Fwww.ladyada.net%2Fimages%2Fsensors%2Fpirardbb.gif

[ Voor 29% gewijzigd door Armageddon_2k op 05-11-2012 16:09 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Ik wacht ook 1 minuut:

code:
1
2
3
4
5
6
7
8
9
10
11
//the time we give the sensor to calibrate (10-60 secs according to the datasheet)
int calibrationTime = 60;    
  //give the sensor some time to calibrate
  Serial.print("calibrating sensor ");
    for(int i = 0; i < calibrationTime; i++){
      Serial.print(".");
      delay(1000);
      }
    Serial.println(" done");
    Serial.println("SENSOR ACTIVE");
    delay(50);


En op dit moment staat hij al ruim 7 minuten aan en nog knipperknipper....

Ok mooi dat er geen pulldown nodig is. Toch blijf ik het vreemd vinden. Zonder arduino werkt ie "perfect" maar met is het echt heel vreemd....

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Mattie112 schreef op maandag 05 november 2012 @ 16:01:

De LED gekoppeld aan de sensor KNIPPERT, de waarde die mn code uitleest is constant 0.


Zodra ik die LED weghaal (en dus de connectie met de GND) krijg ik weer variabele waardes te zien.
Zou de arduino te weinig voeding krijgen op je pin 3? Dat je led en je weerstand alles "opsnoept"?
Als je zonder je led ed aansluit doet hij het dan wel? (zoals Armageddon aangeeft)

en als je echt een knipperend ledje wil, zou ik die aansluiten op een andere poort.

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
PIN3 is juist waar ik digitalREAD doe, dit heeft verder niks met de LED te maken. De LED heb ik juist toegevoegd (zie een paar posts terug) om te kijken wat er nou precies gebeurd. Zonder LED krijg ik namelijk random 1 en 0 in mn output wel beweging of geen beweging.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Ik zou er op deze manier in ieder geval eens een flink grotere weerstand aan hangen, want het is nu effectief gewoon een pulldown resistor.

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Op de plaats van de LED een weerstand plaatsen? De hoogste die ik heb is 100k ohm is dat voldoende?

edit: in plaats van voorschakelweerstand+led bedoel ik dan

[ Voor 23% gewijzigd door Mattie112 op 05-11-2012 16:23 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 10-09 15:29

Armageddon_2k

Trotse eigenaar: Yamaha R6

Nee, die led tussen je PIR en de Arduino moet er gewoon uit.

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Armageddon_2k schreef op maandag 05 november 2012 @ 16:23:
Nee, die led tussen je PIR en de Arduino moet er gewoon uit.
Als ik dat doe dan krijg ik weer random 1 en 0 terug.....

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Wat voor PIR sensor heb je eigenlijks precies? in je schema staat een raar iets?

mijn pc


Acties:
  • 0 Henk 'm!

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 10-09 15:29

Armageddon_2k

Trotse eigenaar: Yamaha R6

Ook met de code van paralax?

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Rusky schreef op maandag 05 november 2012 @ 16:25:
Wat voor PIR sensor heb je eigenlijks precies? in je schema staat een raar iets?
Deze heb ik:

http://samenkopen.net/action_product/726132/626036

@armageddon

Het gaat effectief om dit stuk code in de loop

code:
1
2
3
4
5
  int bla = digitalRead(pirPin);
  Serial.print(teller);
  Serial.print(":  ");
  Serial.println(bla);
    delay(100);


wat ie verder doet is (nog) niet interessant.

edit met een 100k ohm weerstand IN PLAATS VAN de LED zelfde effect, soms 0, soms 1 wel of geen beweging het maakt allemaal niks uit.

[ Voor 11% gewijzigd door Mattie112 op 05-11-2012 16:27 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 10-09 15:29

Armageddon_2k

Trotse eigenaar: Yamaha R6

Mattie, ik heb zelf ook met dit ding gespeeld.
Net wat ik zeg: De PIR moet initialiseren.

Dus ik stel voor:
Sluit hem aan zonder alle extra's (Dus draadjes op de 5v en gnd, en de gele naar de PIN3).
Meer hoef je niet aan te sluiten.
Download de Paralax code. En gooi je Serial Monitor open (Zit in je Adruino software) .
Laat hem netjes overal doorlopen, en post hier dan de output van je serial monitor.

Acties:
  • 0 Henk 'm!

  • Rusky
  • Registratie: December 2000
  • Laatst online: 29-08 12:59
Zou je sensor kapot zijn? (neem aan dat je de jumper goed hebt staan)

mijn pc


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
@armageddon

Ok prima ga ik doen ik laat het zo weten

@Rusky

Ik denk het niet aangezien het op onderstaande manier WEL goed werkt:

Afbeeldingslocatie: http://www.ladyada.net/wiki/lib/exe/fetch.php?hash=e8c1e8&w=500&h=292&media=http%3A%2F%2Fwww.ladyada.net%2Fimages%2Fsensors%2Fpirtestsch.gif

Dus + van batterypack aan de + van de sensor, de - aan de - en de LED aan de OUTPUT en de - van de battarypack.

Compleet zonder arduino dus

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • BocraM
  • Registratie: December 2005
  • Laatst online: 11-07-2022
Als je zegt dat je LED knippert, bedoel je dan dat hij oplicht bij beweging of dat hij willekeurig knippert?

Om de voeding (die nu dus van de arduino afkomt) uit te sluiten als dader kan je pin 3 loskoppelen van de uitgang van je sensor (dit is gezien vanuit het "dubbelop" schema dat je eerder hebt opgebouw). De voedingsdraden van de sensor laat je wel naar de arduino gaan. Je vervangt dus de batterij(en) uit je schema door de 5 volt van de arduino. Werkt de sensor nu nog steeds zoals het hoort?

[edit] en plaats voor de zekerheid ook een voorschakelweerstand (300 ohm tot 1 kilo-ohm) achter de LED op poort 13.

[ Voor 17% gewijzigd door BocraM op 05-11-2012 16:42 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
@BocraM

Ik zal zo jouw idee proberen heb nu even het idee van Armageddon gedaan.

@Armageddon:

Het is nu als volgt aangesloten:

Afbeeldingslocatie: http://upload.mattie-systems.nl/uploads/36077-untitled_sketch_2_bb.jpg

Met deze code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/* 
 * //////////////////////////////////////////////////
 * //making sense of the Parallax PIR sensor's output
 * //////////////////////////////////////////////////
 *
 * Switches a LED according to the state of the sensors output pin.
 * Determines the beginning and end of continuous motion sequences.
 *
 * @author: Kristian Gohlke / krigoo (_) gmail (_) com / http://krx.at
 * @date:   3. September 2006 
 *
 * kr1 (cleft) 2006 
 * released under a creative commons "Attribution-NonCommercial-ShareAlike 2.0" license
 * http://creativecommons.org/licenses/by-nc-sa/2.0/de/
 *
 *
 * The Parallax PIR Sensor is an easy to use digital infrared motion sensor module. 
 * (http://www.parallax.com/detail.asp?product_id=555-28027)
 *
 * The sensor's output pin goes to HIGH if motion is present.
 * However, even if motion is present it goes to LOW from time to time, 
 * which might give the impression no motion is present. 
 * This program deals with this issue by ignoring LOW-phases shorter than a given time, 
 * assuming continuous motion is present during these phases.
 *  
 */

/////////////////////////////
//VARS
//the time we give the sensor to calibrate (10-60 secs according to the datasheet)
int calibrationTime = 30;        

//the time when the sensor outputs a low impulse
long unsigned int lowIn;         

//the amount of milliseconds the sensor has to be low 
//before we assume all motion has stopped
long unsigned int pause = 5000;  

boolean lockLow = true;
boolean takeLowTime;  

int pirPin = 3;    //the digital pin connected to the PIR sensor's output
int ledPin = 13;


/////////////////////////////
//SETUP
void setup(){
  Serial.begin(9600);
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  digitalWrite(pirPin, LOW);

  //give the sensor some time to calibrate
  Serial.print("calibrating sensor ");
    for(int i = 0; i < calibrationTime; i++){
      Serial.print(".");
      delay(1000);
      }
    Serial.println(" done");
    Serial.println("SENSOR ACTIVE");
    delay(50);
  }

////////////////////////////
//LOOP
void loop(){

     if(digitalRead(pirPin) == HIGH){
       digitalWrite(ledPin, HIGH);   //the led visualizes the sensors output pin state
       if(lockLow){  
         //makes sure we wait for a transition to LOW before any further output is made:
         lockLow = false;            
         Serial.println("---");
         Serial.print("motion detected at ");
         Serial.print(millis()/1000);
         Serial.println(" sec"); 
         delay(50);
         }         
         takeLowTime = true;
       }

     if(digitalRead(pirPin) == LOW){       
       digitalWrite(ledPin, LOW);  //the led visualizes the sensors output pin state

       if(takeLowTime){
        lowIn = millis();          //save the time of the transition from high to LOW
        takeLowTime = false;       //make sure this is only done at the start of a LOW phase
        }
       //if the sensor is low for more than the given pause, 
       //we assume that no more motion is going to happen
       if(!lockLow && millis() - lowIn > pause){  
           //makes sure this block of code is only executed again after 
           //a new motion sequence has been detected
           lockLow = true;                        
           Serial.print("motion ended at ");      //output
           Serial.print((millis() - pause)/1000);
           Serial.println(" sec");
           delay(50);
           }
       }
  }


En dit als resultaat : LET OP ER IS 0,0 BEWEGING!
calibrating sensor .............................. done
SENSOR ACTIVE
---
motion detected at 31 sec
motion ended at 38 sec
---
motion detected at 56 sec
motion ended at 59 sec
---
motion detected at 64 sec
motion ended at 84 sec
---
motion detected at 98 sec
motion ended at 106 sec
---
motion detected at 111 sec
motion ended at 123 sec
---
motion detected at 131 sec
motion ended at 133 sec
---
motion detected at 139 sec
edit: als ik weer een mooie printline van mn digitalread doe krijg ik wederom 00000000001111111111100000000000011111111 enz, het valt me wel op dat het een groepje is telkens het is dus niet zo random als "011010110010101" maar een tijd 0 en dan weer een tijd 1

nog een edit:
als ik de jumper anders doen blijft ie staat op "motion detected" zo te zien wordt ie dan nooit 0

[ Voor 3% gewijzigd door Mattie112 op 05-11-2012 16:48 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
BocraM schreef op maandag 05 november 2012 @ 16:35:
Als je zegt dat je LED knippert, bedoel je dan dat hij oplicht bij beweging of dat hij willekeurig knippert?

Om de voeding (die nu dus van de arduino afkomt) uit te sluiten als dader kan je pin 3 loskoppelen van de uitgang van je sensor (dit is gezien vanuit het "dubbelop" schema dat je eerder hebt opgebouw). De voedingsdraden van de sensor laat je wel naar de arduino gaan. Je vervangt dus de batterij(en) uit je schema door de 5 volt van de arduino. Werkt de sensor nu nog steeds zoals het hoort?

[edit] en plaats voor de zekerheid ook een voorschakelweerstand (300 ohm tot 1 kilo-ohm) achter de LED op poort 13.
Ik bedoel dan dat de LED knippert, willekeurig, niet alleen bij beweging (sterker nog of ik nou zwaai of niet, hij blijft rustig door "knipperen".

Bedoel jij de voeding van de arduino gebruiken maar niet pin3 aansluiten en alleen een LED om te kijken?

En de led op pin13 heeft een weerstand ben m alleen vergeten te tekenen :p

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • BocraM
  • Registratie: December 2005
  • Laatst online: 11-07-2022
Ik bedoel inderdaad als basis het schema met de batterypack. In plaats van de batterypack neem je de 5V en ground van je arduino. Nu zou je schakeling dus hetzelfde moeten doen als met je batterypack.

Wat deed de PIR (of beter gezegd, de LED) trouwens bij goed functioneren (met batterypack)? Ging de LED aan en bleef hij aan tijdens bewegen of knipperde hij bij beweging?

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
@BocraM

Ik heb het nu gedaan en de led blijft nog steeds "knipperen" (paar sec uit paar sec aan). Zal dan het voltage van de arduino niet goed zijn ofzo :X heel vreemd allemaal. Heb wel het idee wat ie wat "stabieler" is (langer aan langer uit).... Het maakt trouwens niet uit of ik een 9v blok gebruik of de USB power...

Met het batterpack bleef de LED UIT wanneer geen beweging en ging hij voor ca 2 sec aan wanneer ik ging zwaaien :)

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • BocraM
  • Registratie: December 2005
  • Laatst online: 11-07-2022
Dan lijkt het er inderdaad op dat de arduino niet genoeg stroom levert (of de PIR werkt niet op 5V maar dat zou wel moeten volgens de beschrijving).
Een aantal vragen:
Heb je een originele arduino of een Chinese kloon?
Heb je een multimeter om stroom en spanning te kunnen meten?
Hoeveel volt komt er uit je batterypack?
Heb je andere 5V-bronnen zoals een LM7805 regelaar?

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Het is een originele

Ik meet: 4.2 volt met een 9volt blok, 4,7 volt met USB

zo'n 5.5 a 6 volt (4x AA)

Neen voor zover ik weet niet :p (valt ofc wel te bestellen op ebay)

Ik kan wel ff aan een vriend vragen of ik zn chinese arduino kloon kan lenen ben eig wel benieuwd wat die doet....

Edit haha mn 9volt blok geeft ook maar 6,7 volt af 8)7 Zal morgen ff een nieuwe regelen en kijken of het dan beter gaat :p

O M G _/-\o_ _/-\o_ _/-\o_ _/-\o_

Het werkt :)!!!! Kon het toch niet laten heb ff een batterij uit de rookmelder gejat... keurig 9 volt geeft ie af. Pft wat een gedoe zeg... het is dat jij zegt joh hoeveel volt staat erop en dat ik denk laat ik ff de batterij meten....

Naja blijkbaar is die sensor best kieskeurig aangezien hij via usb ook niet goed werkt :p

Ik ga meteen alle dingen wat deze week niet lukte maar ff nalopen :p

Toch gaat dat het via usb niet werkt maar ik ben blij in elk geval :D

edit2:

het werkt nu dus op de meest simpele manier, 5v op 5v, gnd op gnd en signal op pin3 :) zonder ledjes, zonder weerstanden echt prachtig :D

[ Voor 62% gewijzigd door Mattie112 op 05-11-2012 20:41 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 10-09 15:29

Armageddon_2k

Trotse eigenaar: Yamaha R6

..... -O-
Begin alvast maar met rennen, je krijgt 5 minuten voorsprong :+


Trouwens... waarom zou je uberhaubt een "extra" voeding aansluiten? Als je nou een fatsoenlijke labvoeding hebt, dan is het nog 1 ding.
Maar je usb zal toch wel voldoende leveren?
En zo niet? dan sluit je dan maar een voeding aan.

Het ergste wat je in dat geval kan overkomen is een windowsmelding:
"Energie van USB-overschreden"

[ Voor 79% gewijzigd door Armageddon_2k op 05-11-2012 20:50 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Ik heb juist geen labvoeding :p

Mja ik vind het ook vreemd maar via usb blijft ie toch echt "knipperen" geen idee waar het dan precies aan ligt. Ik kan het voor de gein nog is via mn laptop proberen om te kijken of het aan mn pc ligt :p

Ach ik ben allang blij dat het werken en dat met zo'n simpele oplossing ;)

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Mogge,
ik probeer het volgende te gaan doen, het is mij namelijk opgevallen dat arduino veel gebruik maakt van library's om lcd's aan te sturen zoals je hier bijv. kunt zien : http://www.arduino.cc/playground/Code/LCD
Punt is, ik wil de lcd zonder library gaan aansturen maar heb eigenlijk geen idee waar te beginnen.

Deze code die ik gebruik om een seriele parallax-lcd aan te sturen met een basicstamp wil ik omzetten naar een uno code :

code:
1
2
3
4
5
6
7
8
9
10
' Smart Sensors and Applications - LcdTestMessage.bs2
' Display a test message on the Parallax Serial LCD.
' {$STAMP BS2}                     ' Target device = BASIC Stamp 2
' {$PBASIC 2.5}                      ' Language = PBASIC 2.5

SEROUT 14, 84, [22, 12]                        ' Initialize LCD
PAUSE 5
SEROUT 14, 84, ["See this?", 13, "The LCD works!"]
 ' Text message, carriage return, more text on Line 1.
END                    ' Program end


Regel 1,2 en 9 zijn comments, regel 3 en 4 zijn specifiek voor de basicstamp dus die heb ik voor een uno niet nodig.
Blijft over regel 6 :
SEROUT 14, 84, [22, 12]
Dat staat natuurlijk voor SerialOut pin 14 die de data verstuurt naar de LCD.
De 84 is om de basicstamp aan te geven dat het om 9600 Baud gaat; voor de uno zal dit wrs dan een regel worden zoals : Serial.begin(9600);
De 22 betekent : Turn the display on, with cursor off and no blink
De 12 betekent : Form Feed - The cursor is moved to position 0 on line 0 and the entire display is
cleared. Users must pause 5mS after this command.
De 13 in regel 8 betekent : Carriage Return – For the two-line LCD models, if on line 0 the cursor is moved to
position 0 on line 1. If on line 1, it wraps around to position 0 on line 0.
Wie dit wil nalezen is hier een klein pdf'je : http://www.parallax.com/P...arallaxSerialLCD-v3.0.pdf

Nu vraag ik me dus af of ik met de uno ook een willekeurige pin zou kunnen gebruiken of moet dit perse pin 0 met de RX zijn ?
De reden dat ik dit allemaal vraag is dat het volgens mij mogelijk moet zijn om iedere lcd met iedere willekeurige micro aan te kunnen sturen zonder library's.
Een andere reden is dat ik mijn lcd nog niet wil beschadigen dus wie deze niet al te lastige code in arduino-taal wil omzetten met de juiste pin-nummers die wordt alvast bedankt. :)
CAUTIONS: Wiring mistakes can damage this LCD.
Alles valt na te lezen vanaf pagina 15 vanaf deze uitgebreide pdf die overigens NIET automatisch wordt opgeslagen, aanklikken heeft dus geen gevolgen :
http://www.parallax.com/P...rintSmartSensors-v1.0.pdf

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Hier Mattie, ben je gelijk van die batterijen af :)

7,5V voeding (#ACDC7508)
ACDC7508 is een gestabiliseerde netadapter van 7,5V / 0,8A en is o.a. geschikt voor alle Parallax boards, Arduino Uno en Arduino Mega.

De specificaties vindt u in de datasheet.

€ 9,95 (€ 12,04 incl.btw)
http://www.antratek.nl/Power-supplies.html

Die heb ik ook.

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
Mattie112 schreef op dinsdag 06 november 2012 @ 08:39:
Ik heb juist geen labvoeding :p

Mja ik vind het ook vreemd maar via usb blijft ie toch echt "knipperen" geen idee waar het dan precies aan ligt. Ik kan het voor de gein nog is via mn laptop proberen om te kijken of het aan mn pc ligt :p

Ach ik ben allang blij dat het werken en dat met zo'n simpele oplossing ;)
ik zou zeggen meet eens hoeveel volt er op je arduino staat als je 'm aan de USB hangt. Veel (chinese) kabeltjes hebben behoorlijk wat weerstand en dan zakt de spanning al snel in. De arduino zelf moet het vanaf 3,3v gewoon doen dus daar zul je het niet snel aan merken.

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Je moet de RX pin met jouw TX pin verbinden. En nee dat hoeft niet per sé met de TX pin van je arduino te zijn. Dat is meestal de efficientste oplossing, dan wordt alles door hardware uitgevoerd, maar in principe zijn er niet bijzonder hoge eisen aan zijn serial snelheid, en je arduino hoeft niks anders te doen, dus je kan SoftwareSerial gebruiken: http://www.arduino.cc/en/Reference/SoftwareSerial. Dan kan je elke pin gebruiken.


En je hoeft niet bang te zijn de LCD te beschadigen met verkeerde Arduino code, dat gaat niet gebruiken (tenzij het echt idioot debiel is ontworpen, maar dat lijkt me niet). Wat ze bedoelen is dat als jij je voeding en aarde omwisselt, of als je 20V op je signaal pin zet, dat hij dan wel kapot gaat. En dat eerste geval is nog geen eens zeker.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Ok furby
De RX van de lcd verbinden met pin 1 TX van de uno en dan dit http://www.arduino.cc/en/Reference/SoftwareSerial
ergens erin plakken.

Ik ga het nakijken .... laters
tnx :)

Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
Dat hoeft dus niet. Dat is enkel nodig wanneer je de hardware serial wilt gebruiken. Het is de efficientste oplossing, maar ik kan me ook voorstellen dat je die met je computer wilt verbinden voor debugging. Als je softwareserial gebruikt kan je elke pin gebruiken als TX.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Ja, ok.
Ik ga dat hele hfdst. software.serial doornemen, ik had al zo'n vermoeden dat ik te weinig kennis had van c+ om dit simpel voor elkaar te krijgen.
In ieder geval heb je me op een spoor gezet waarvoor bedankt. :)

Acties:
  • 0 Henk 'm!

  • Kobus Post
  • Registratie: September 2010
  • Laatst online: 05-09 17:13
Zijn er hier ook mensen die een Arduino en een iDevice met elkaar hebben laten communiceren, en zo ja. hoe?

No trees were harmed in the creation of this message, but several thousand electrons were mildly inconvenienced.


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
kitao schreef op dinsdag 06 november 2012 @ 09:00:
[...]


Hier Mattie, ben je gelijk van die batterijen af :)

7,5V voeding (#ACDC7508)
ACDC7508 is een gestabiliseerde netadapter van 7,5V / 0,8A en is o.a. geschikt voor alle Parallax boards, Arduino Uno en Arduino Mega.

De specificaties vindt u in de datasheet.

€ 9,95 (€ 12,04 incl.btw)
http://www.antratek.nl/Power-supplies.html

Die heb ik ook.
Bedankt voor de link alleen uiteindelijk wordt het een rijdende robot dus dan moet ik toch over op batterijen :p Zal eerst wel ff in mn bak met adapters kijken of er niet iets nuttigs in zit :)
mcDavid schreef op dinsdag 06 november 2012 @ 09:45:
[...]

ik zou zeggen meet eens hoeveel volt er op je arduino staat als je 'm aan de USB hangt. Veel (chinese) kabeltjes hebben behoorlijk wat weerstand en dan zakt de spanning al snel in. De arduino zelf moet het vanaf 3,3v gewoon doen dus daar zul je het niet snel aan merken.
Hm ja dat zou best kunnen, er zit een USB-verleng kabel van een meter of 3 tussen (+ de usb-B kabel) ik krijg zo'n 4.7 volt via USB.
kitao schreef op dinsdag 06 november 2012 @ 10:05:
Ja, ok.
Ik ga dat hele hfdst. software.serial doornemen, ik had al zo'n vermoeden dat ik te weinig kennis had van c+ om dit simpel voor elkaar te krijgen.
In ieder geval heb je me op een spoor gezet waarvoor bedankt. :)
Ik maak ook gebruik van de software serial voor mijn bluetooth verbinding. Ik gebruik hier pin 6 en pin 7 (tx en rx) dus daarvan kan ik je zeker garanderen dat ze werken ;)

Over het algemeen wil je juist NIET pin 0 en 1 gebruiken omdat die aan je USB->TTL chip zitten dus dan werkt je serial console op je pc niet meer.
Kobus Post schreef op woensdag 07 november 2012 @ 12:59:
Zijn er hier ook mensen die een Arduino en een iDevice met elkaar hebben laten communiceren, en zo ja. hoe?
Ja (naja Android dan) en dat gaat via bluetooth. Je kan natuurlijk ook iets via wifi doen al is dat een heel stuk duurder!

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Mattie112 schreef op woensdag 07 november 2012 @ 18:44:
Bedankt voor de link alleen uiteindelijk wordt het een rijdende robot dus dan moet ik toch over op batterijen :p Zal eerst wel ff in mn bak met adapters kijken of er niet iets nuttigs in zit :)
Ja logisch of je moet er eentje hebben met een kleine draaicirkel :D
Deze heb ik ook :
Afbeeldingslocatie: http://www.okaphone.nl/product/images/k7300.jpg
http://www.okaphone.com/artikel.asp?id=152881
Leuk kitje om te solderen en perfect voor een 9V batterij.
Ik maak ook gebruik van de software serial voor mijn bluetooth verbinding. Ik gebruik hier pin 6 en pin 7 (tx en rx) dus daarvan kan ik je zeker garanderen dat ze werken ;)

Over het algemeen wil je juist NIET pin 0 en 1 gebruiken omdat die aan je USB->TTL chip zitten dus dan werkt je serial console op je pc niet meer.
Vreemd, bij pin 0 en 1 staat wel rx/tx maar bij pin 6/7 staat niks, ik wist dat dus ook niet.
Ik moet best nog veel doornemen op deze pagina, ik moet nog beginnen met hfdst.5
Als furby mij niet gewezen had op software serial dan was ik hier pas ergens halverwege volgend jaar aan toe gekomen. :-(
Ik heb best wel tijd maar met nachtdiensten dan beperk ik me enkel tot wat lezen.
Misschien is het veel gevraagd Mattie, en als je zelf geen tijd/zin hebt dan vind ik dat prima, maar jij als programmeur, hoe zou jij dit simpele en korte programmaatje in mijn vorige post vertalen naar de Uno zonder gebruik te maken van een library ?
Dan heb ik alvast een voorbeeldje en kan dan meteen kijken of het werkt.
zie : kitao in "[Discussie] Arduino-topic"

Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Zonder library gaat het niet lukken, het heet niet voor niets "SoftwareSerial Library" :)

Je KAN het op pin 0 en 1 zetten maar dan maak je gebruik van de "hardware serial" maw: ÓF pin 0 en 1 gaan naar je usb poort (zodat je serial monitor op je pc kan gebruiken) ÓF je gebruikt 0 en 1 (dan dus geen library nodig) voor de LCD.

Persoonlijk zou ik gaan voor de SoftwareSerial Library aangezien even debuggen via de pc dan nog steeds mogelijk is.

edit: heel simpel voorbeeldje

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <SoftwareSerial.h>

SoftwareSerial lcdSerial(6, 7); // RX, TX

void setup()  
{
  //hardware serial (serial monitor in de arduino IDE)
  Serial.begin(9600);
  Serial.println("USB Serial");

  //en nu een software serial
  lcdSerial.begin(9600);
  lcdSerial.write(22, BYTE)//geen idee of hij dat zo gaat pakken maar in jouw voorbeeld heeft dat te maken met een cursos die blinkt of niet, misschien moet dit gewoon als printline gedaan worden
  //misschien kan je dit gebruiken: http://www.arduino.cc/playground/Learning/SerialLCD
  //maar het kan ook zijn dat dit voor elk LCD uniek is
  lcdSerial.print(12, BYTE)//dit moet clear lcd zijn
  lcdSerial.print("Hello, world?");
}

void loop()
{
  if (Serial.available()){//wat je via usb "typt" komt op je scherm te staan
    lcdSerial.write(Serial.read());
  }
}


Geen idee of het werkt (ik kan het niet testen) maar de link die er bij staat moet je genoeg info geven over dat type LCD :)

[ Voor 53% gewijzigd door Mattie112 op 08-11-2012 13:14 ]

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Het werkt ! d:)b

Mijn lcd heeft drie pinnen, 5V,GND en RX
De RX heb ik aangesloten op pin 7 van de uno.
Deze code staat er nu in :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <SoftwareSerial.h>
SoftwareSerial lcdSerial(6,7); // RX,TX
void setup()  
{  
  lcdSerial.begin(9600);
  lcdSerial.write(22);
  lcdSerial.write(12);
  delay(10);  
  lcdSerial.print("Hello, Mattie");
}
void loop()
{
}


Tof, hardstikke bedankt :)
Vanhier kan ik zelf verder zoeken, zo kwam ik er achter dat lcdSerial.write(22, Byte) niet meer werkt, byte is verouderd zei die ofzoiets.
Delay heb ik toegevoegd om de lcd tijd te geven zich te wissen en waarom ik pin 6 RX niet kan verwijderen is me niet helemaal duidelijk maar die moet blijven staan.

[ Voor 29% gewijzigd door kitao op 08-11-2012 17:49 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
nou dat is mooi :)

De RX moet blijven staan omdat de SoftwareSerial gemaakt is voor "transmit" en "receave".
Met andere woorden: de arduino luistert nu uit op pin 6 :p

Misschien is er ook wel een speciale versie van die library welke alleen 1 pin ondersteund maar dat zou ik niet weten.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Het sleutelwoord BYTE wordt niet langer ondersteund zegt die.

Ok, zonder library werkt het dus niet, ik zal even kort proberen te uitleggen waarom ik dacht dat dit wel zou kunnen :
1) Ik zag de basicstamp geen gebruik maken van een library
2) The process of controlling the display involves putting the data that form the image of what you want to display into the data registers, then putting instructions in the instruction register. The LiquidCrystal Library simplifies this for you so you don't need to know the low-level instructions.
Ik dacht dus dat een code zoals lcdSerial.write(22) een low level instructie was en dat je dan geen library nodig hebt, dus dat je gewoon met nummers zoals 12,22,13 etc. dat ding kan besturen.
De LCD-library is nu in ieder geval komen te vervallen, echter is die nu komen te vervangen door de software.serial.h ; zonder werkt het inderdaad niet.

En 1 pinnetje meer of minder (6) is geen ramp, ik ben tevreden met je jullie uitleg. :)
Er stond nog meer in je programma, data typen via de usb, maar dat bekijk ik van het weekend.
misschien moet dit gewoon als printline gedaan worden
als ik codelijn 6 en 7 vervang door serialprint (22) en (12) dan print die gewoon die nummers uit, de commando's lcd on en clr worden dan niet uitgevoerd.
Zonder testopstelling is dit natuurlijk lastig te zien voor jou.
Over een tijdje stuur ik de lcd wel op naar je, dan kan je die even uitproberen.

[ Voor 14% gewijzigd door kitao op 08-11-2012 18:16 ]


Acties:
  • 0 Henk 'm!

  • Mattie112
  • Registratie: Januari 2007
  • Laatst online: 16:32
Hm misschien moet je "0x20, BYTE" proberen. Ik had ook zo'n soort probleem met custom LCD characters :p

En opzich kan je dus ook wel ZONDER library dan moet ie op pin 0. Je kan voor de gein kijken wat ie dan doet maar ik geloof dat je dan je "usb serial monitor" disabled.

3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
Helaas, dat gaat zo niet :
Afbeeldingslocatie: http://s7.postimage.org/6kr37lqsn/img54.jpg
klik

En waarom zou ik (0x20 Byte) erbij gaan zetten, het programma was juist zo compact mogelijk geworden ?

softwareserial.h maar weer terug gezet en pin 0 en 1 geprobeerd, doet wel iets, geeft leuk melodietje op de buzzer, print ook, maar is onvoorspelbaar, geeft soms chinese tekens, dan schrijft die weer alles door elkaar.
Pin 7 werkt het beste :)

ps, ik log uit, tot morgen

[ Voor 34% gewijzigd door kitao op 08-11-2012 18:57 ]


Acties:
  • 0 Henk 'm!

  • Sissors
  • Registratie: Mei 2005
  • Niet online
In die BASIC zet een software serial blijkbaar standaard in, maar in principe is dat ook gewoon een library. Als je wilt kan je ook prima zelf een simpele software serial maken, vooral gezien je alleen hoeft te zenden is dat redelijk goed te doen.

Als je pin 1 gebruikt zit er ook gewoon een library achter, maar die hoef je ook niet specifiek te includen omdat het een standaard library is.


Ik weet trouwens niet of arduino standaard een not connected pin heeft. Ik heb meer ervaring met de mbed, en daar kan je als je een pin niet gebruikt not connected (NC) invullen. Dan negeert hij die gewoon.

Acties:
  • 0 Henk 'm!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 19:47
Gedver.. net mijn Arduino binnen, maar krijg het ding niet aan de praat. Het is een Arduino Nano (chinese kloon), maar het lukt niet een programma te flashen. Ik krijg de (zo-te-zien-befaamde) " avrdude: stk500_getsync(): not in sync: resp=0x00" fout.

Tijdens het uploaden zie ik dat AVRdude 3x probeert iets te sturen, ik zie dan ook de RX led 3x knipperen, maar daar blijft het bij..

Af en toe geeft windows ook een foutmelding : "arduino one of the usb devices on this computer has malfunctioned".. ik heb volgens mij de juiste drivers geinstalleerd.

Wat kan ik nu het beste proberen?

Hmmm.. zou het dit kunnen zijn:

•Make sure there's a bootloader burned on your Arduino board. To check, reset the board. The built-in L LED (which is connected to pin 13) should blink. If it doesn't, there may not be a bootloader on your board.

De LED knippert idd niet als ik op reset druk... zou dan de bootloader opnieuw moeten flashen, dat moet dan geloof ik via de ICSP header? Lijkt me een heel gedoe :(

[ Voor 26% gewijzigd door WVL_KsZeN op 08-11-2012 21:52 ]

/me heeft eindelijk ook een icoontje.. woef.. boeien..


Acties:
  • 0 Henk 'm!

  • Fuzzillogic
  • Registratie: November 2001
  • Laatst online: 01-07 22:34
WVL_KsZeN schreef op donderdag 08 november 2012 @ 21:42:
De LED knippert idd niet als ik op reset druk... zou dan de bootloader opnieuw moeten flashen, dat moet dan geloof ik via de ICSP header? Lijkt me een heel gedoe :(
Je kunt de ene Arduino met een andere ICSP programmeren. 4 draadjes leggen, juiste sketch laden, en gaan met die banaan. Ik heb zo een bugje uit de bootloader van een Arduino NG geflasht.

Caveat lector: verschil in voltages kan roet in eten gooien. Bekijk dus of dat mogelijk is voordat je verschillende arduino's aan elkaar knoopt.

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
furby-killer schreef op donderdag 08 november 2012 @ 19:23:
In die BASIC zit een software serial blijkbaar standaard in, maar in principe is dat ook gewoon een library. Als je wilt kan je ook prima zelf een simpele software serial maken, vooral gezien je alleen hoeft te zenden is dat redelijk goed te doen.
Mogge, :)
Het zit er standaard in, ok, dat kan, de stamp en de lcd zijn op elkaar afgestemd van dezelfde fabrikant. Nu moet ik nog gaan uitzoeken wat zo'n library precies doet voordat ik er zelf eén kan gaan ontwerpen.
En voordat ik verder reageer, dit draadje is begonnen met de volgende 'uitdaging':
Ik wou een parallax serie-lcd op een uno aansluiten en had daar een zetje in de rug bij nodig in de vorm van een programmaatje.
Die heb ik gekregen en in feite is het nu 'af', mission accomplished enzo.
Wat ik wil zeggen is het volgende, iedere keer als je ergens mee bezig bent dan komt er wel weer iets nieuws bij, maar op gegeven moment moet je natuurlijk ook zelf gaan zwemmen.
Bijvoorbeeld dit :
Als je pin 1 gebruikt zit er ook gewoon een library achter, maar die hoef je ook niet specifiek te includen omdat het een standaard library is.
Volgens mattie zou ik de rx van de lcd op pin 0 van de uno kunnen aansluiten, daar staat bij => RX, volgens jou kan ik de rx van de lcd op pin 1 van de uno aansluiten, daar staat bij <= TX.
Feit is, ik heb ze allebei geprobeerd en hoe het kan weet ik niet maar ik kreeg meteen een melodietje te horen die helemaal niet in het programma stond en allerlei vreemde andere dingen gebeurden er, soms was de tekst goed, dan weer een puinhoop.
Ik wil hier echter geen vragen over stellen, de lcd werkt prima op pin7 - iets wat jij ook al aangaf - en ik heb mijn korte voorbeeldprogramma en van hieruit ga ik verder experimenteren.
Nogmaals bedankt voor de tips :)

Ps, misschien raad je het al, de volgende test wordt deze lcd , een HD44780 parallel interface, aansluiten op de stamp.
Als dat ook werkt dan kan ik de seriele uitlenen aan mattie als die dat nog wil ;)

[ Voor 7% gewijzigd door kitao op 09-11-2012 09:33 . Reden: ps ]


Acties:
  • 0 Henk 'm!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 19:47
Fuzzillogic schreef op donderdag 08 november 2012 @ 23:16:
[...]

Je kunt de ene Arduino met een andere ICSP programmeren. 4 draadjes leggen, juiste sketch laden, en gaan met die banaan. Ik heb zo een bugje uit de bootloader van een Arduino NG geflasht.

Caveat lector: verschil in voltages kan roet in eten gooien. Bekijk dus of dat mogelijk is voordat je verschillende arduino's aan elkaar knoopt.
Kan ik die nano programmeren met mijn mega 2560?

/me heeft eindelijk ook een icoontje.. woef.. boeien..


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
WVL_KsZeN schreef op vrijdag 09 november 2012 @ 10:31:
Kan ik die nano programmeren met mijn mega 2560?
ik snap niet waarom je nog vragen stelt aan iemand die met een zgn. 'advies' komt zoals 4 draadjes leggen en gaan met die banaan.
Wat voor zin heeft dat ? 8)7

Acties:
  • 0 Henk 'm!

  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
kitao schreef op vrijdag 09 november 2012 @ 10:38:
[...]


ik snap niet waarom je nog vragen stelt aan iemand die met een zgn. 'advies' komt zoals 4 draadjes leggen en gaan met die banaan.
Wat voor zin heeft dat ? 8)7
Je mag gerust zelf ook een keer wat uitzoeken hoor, niet alles hoeft tot in details met complete stappenplannen voorgekauwd te worden.

http://google.nl/#q=arduino+as+isp niet geprobeerd, maar ik weet 100% zeker dat het antwoord in de eerste 3 hits te vinden is.

-edit-
@kitao hieronder: je kunt ook gewoon dankbaar zijn dat iemand de moeite neemt je de goeie kant op te wijzen ondanks dat hij geen tijd heeft een complete tutorial voor je te schrijven. Reacties zoals de jouwe zijn niet bepaald motiverend om uberhaupt nog hulp of aanwijzingen te bieden. Als je niet in staat bent met de termen die hij dropt zelf wat uitzoekwerk te doen en eventueel met een gerichte vervolgvraag te komen (wat WVL_KsZeN overigens wel doet), kun je beter de hoop opgeven en je tijd aan wat anders gaan besteden. En dat geldt niet alleen voor arduino, maar voor vrijwel alles wat op tweakers.net besproken wordt.

Ik reageer bewust even via een edit omdat het niet mijn bedoeling is dit topic in een zinloze offtopic discussie te laten verzanden.

[ Voor 41% gewijzigd door mcDavid op 09-11-2012 12:44 ]


Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
mcDavid schreef op vrijdag 09 november 2012 @ 11:12:

Je mag gerust zelf ook een keer wat uitzoeken hoor, niet alles hoeft tot in details met complete stappenplannen voorgekauwd te worden.
Is mss wel zo, maar waarom dan toch reageren ?
Zo van, mij is het heel simpel wel gelukt maar jou vertel ik het niet.
Heeft geen zin.

Acties:
  • 0 Henk 'm!

  • Demo
  • Registratie: Juni 2000
  • Laatst online: 15:27

Demo

Probleemschietende Tovenaar

kitao schreef op vrijdag 09 november 2012 @ 11:49:
[...]


Is mss wel zo, maar waarom dan toch reageren ?
Zo van, mij is het heel simpel wel gelukt maar jou vertel ik het niet.
Heeft geen zin.
Omdat Fuzzilogic waarschijnlijk ook niet weet wélke 4 draadjes je moet verbinden en welke sketch er in de Arduino moet? Wat voor een 2560 waarschijnlijk ook nog een andere is dan voor een standaard Arduino.. Wat heeft het voor zin als persoon A voor persoon B gaat opzoeken of iets kan om het vervolgens hier te posten, terwijl persoon B het ook zelf kan opzoeken?
De instelling op GoT is al sinds ik hier kom (ruim 12 jaar) dat je elkaar helpt, maar niet alles tot in den treure hoeft voor te kauwen. Dus als jij van mening bent dat dat geen zin hebt, is GoT misschien niet het juiste forum voor je ;)

Unix doesn't prevent a user from doing stupid things, because that would necessarily prevent them from doing brilliant things.
while true ; do echo -n "bla" ; sleep 1 ; done


Acties:
  • 0 Henk 'm!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 19:47
Goed, heb alles opgebouwd om de bootloader te kunnen flashen met de Mega2560.

Ik heb alles als volgt aangesloten :

Mega pin 53 (SS) -> Nano pin RST
Mega pin 52 (SCK) -> Nano pin D13
Mega pin 51 (MOSI) -> Nano pin D11
Mega pin 50 (MISO) -> Nano pin D12

Het nano-bordje heeft spanning (5V) en de pwr-led brandt.

Op de mega heb ik een aantal led's om te zien of alles goed functioneert (heartbeat (deze pulseert rustig), error en programming). De AVR-ISP sketch lijkt goed te lopen, de heartbeat brandt.

Ik heb op de mega een 100nF condensator tussen GND en RST gezet, om te voorkomen dat de mega zichzelf reset.

Dan tijd om de bootloader te flashen!! Alleen gebeurt er weinig...

De boel is ingesteld als : programmer -> arduino as ISP, de com-poort staat ook goed.

Als ik het flashen start, gaat eerst de error-LED aan. Ik zie niets gebeuren op de programming-LED en na een tijdje krijg ik de volgende foutmelding :

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
D:\arduino-1.0.1\hardware/tools/avr/bin/avrdude -CD:\arduino-1.0.1\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega2560 -cstk500v1 -P\\.\COM5 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xD8:m -Ulfuse:w:0xFF:m 

avrdude: Version 5.11, compiled on Sep  2 2011 at 19:38:36
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "D:\arduino-1.0.1\hardware/tools/avr/etc/avrdude.conf"

         Using Port                    : \\.\COM5
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [10] 
         AVR Part                      : ATMEGA2560
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PA0
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    10     8    0 no       4096    8      0  9000  9000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           flash         65    10   256    0 yes    262144  256   1024  4500  4500 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : STK500
         Description     : Atmel STK500 Version 1.x firmware
avrdude: Send: A [41] . [80]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [02] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [81]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [01] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [82]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [12] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [98]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
avrdude: Send: A [41] . [84]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [85]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [86]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [87]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [89]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [00] 
avrdude: Recv: . [10] 
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: Send: A [41] . [81]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [01] 
avrdude: Recv: . [10] 
avrdude: Send: A [41] . [82]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [12] 
avrdude: Recv: . [10] 
avrdude: Send: B [42] . [00] . [00] . [00] . [01] . [01] . [01] . [01] . [03] . [00] . [00] . [00] . [00] . [01] . [00] . [10] . [00] . [00] . [04] . [00] . [00]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [10] 
avrdude: Send: E [45] . [05] . [08] . [d7] . [a0] . [00]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [10] 
avrdude: Send: P [50]   [20] 
avrdude: Recv: 
avrdude: stk500_program_enable(): protocol error, expect=0x14, resp=0x50
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

avrdude: Send: Q [51]   [20] 
avrdude: Recv: 
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

avrdude done.  Thank you.


heeft er iemand een tip?

/me heeft eindelijk ook een icoontje.. woef.. boeien..

Pagina: 1 ... 19 ... 96 Laatste