Arduino programma automatische volgorde

Arduino specifieke Software
Berichten: 1
Geregistreerd: 06 Jun 2018, 13:34

Arduino programma automatische volgorde

Berichtdoor mechtronica030 » 06 Jun 2018, 13:51

Hi forumleden,

Voor mijn vervolgopleiding mechatronica wil ik van te voren wat meer kennis opdoen over arduino programmeren.
Tot nu toe ben ik wel bekend om te programmeren in flowchart, functieblokken en ladderdiagrammen.
Hoe maak je met tekst programmeren een automatische volgorde?
Een deel van de basis van arduino snap ik.

Ik loop op dit moment stage in een bedrijf waarbij ze producten verspanen met cnc machines. Ik wil bij het bedrijf een robot ontwerpen ( pick and place unit ) dat de producten in de klem doet en er weer uit haalt, om vervolgens te sorteren in traytjes. Tot nu toe vind ik op het internet alleen maar voobeelden van hele simpele programma codes. Mijn vraag is hoe ziet een vervolg stap eruit bij tekst programmeren.
bij ladderdiagram werken ze met verschillende stappen waar ze iets uitvoeren.

stap1....
stap2....
stap3... enz.

iemand een voorbeeld van een programma code met uitleg erbij van een volgorde programma?
ook wil ik gebruikmaken van subprogramma's.

Bij voorbaat dank,

Met vriendelijke groet,

Damian

Advertisement

Berichten: 2491
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Arduino programma automatische volgorde

Berichtdoor shooter » 06 Jun 2018, 21:53

arduino werkt wel anders als een PLC programma, maar de simpelste lookalike is mblock. dat is een grafische taal die een beetje op flowchart lijkt.
is gratis en simpel te doen.
Een sequentie programma wordt vaak gedaan met een state case programma.
paul deelen
shooter@home.nl

Berichten: 150
Geregistreerd: 15 Dec 2012, 21:02
Woonplaats: Delfzijl

Re: Arduino programma automatische volgorde

Berichtdoor FPCUser » 07 Jun 2018, 10:11

In aanvulling op shooter suggestie;

Wellicht heb je iets aan deze uitleg door J. Bellavance over state machines:
https://github.com/j-bellavance/Tutorials/tree/master/State%20machines%20Tutorial

Berichten: 24
Geregistreerd: 09 Jun 2018, 06:54
Woonplaats: Roodepoort, Zuid Afrika

Re: Arduino programma automatische volgorde

Berichtdoor sterretje » 09 Jun 2018, 07:28

Er zijn twee benaderingen om een state machine te impelmenteren. De eerste maakt gebruik van een switch statement (of een if / else if / else) en de tweede maakt gebruik van functie pointers.

Code: Alles selecteren
byte step = 0;
void loop()
{
  switch(step)
  {
    case 0:
      // doe iets
      ...
      ...
      // stap klaar, ga naar volgende stap
      step++;
      break;
    case 1:
      // doe iets anders
      ...
      ...
      // stap klaar, terug naar de eerste stap (0)
      step = 0;
      break;
  }
}

Soms hangt de volgende stap af van bv het indrukken van een knop of het bereiken van een bepaalde temperatuur; in dat geval kun condities inbouwen voordat jje door gaat naar de volgende stap.

Het nadeel van de benadering met een switch statement is dat de switch erg groot gaat worden als je veel stappen hebt, zelfs als je bebruik maakt van functies voor iedere stap. In dat geval kun je kiezen voor een benadering met (een array van) functie pointers. Ik ga dat nu niet uitwerken omdat ik geen idee heb hoeveel ervaring je hebt in C/C++.

Berichten: 20
Geregistreerd: 20 Mrt 2018, 21:11

Re: Arduino programma automatische volgorde

Berichtdoor Duckman » 10 Jun 2018, 17:45

Snap nog niet helemaal wat je bedoeling is.

Volgens mij moet je eerst goed bedenken wat je robot moet gaan doen. Pick & Place en sorteren. Waarop sorteert je robot (hoe weet de robot werk product waar in moet). Er is niks mis met eerst een goed flow diagram te maken met een aantal als/dan stappen. Ontwerp dan je robot en denk dan na over hoe te programmeren.
Ik begrijp dat het voor je stage bedrijf is. Denk hier bij ook aan de veiligheid je wil niet dat iemand vast komt te zitten in je robot of dat alle dingen die je robot moet pakken door de lucht vliegen.

mBlock is leuk. Ben nu met een handleiding bezig voor basis school om een éénvoudige robot arm te besturen. Maar om een productie robot hier mee te programmeren?
Zou er persoonlijk voor kiezen om met PLC's aan de slag te gaan. Arduino is leuk maar heeft z'n beperkingen al was het maar de 32kb geheugen.
Ter Leeringe ende Vermaeck

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 3 gasten