Doel:€250.00
Donaties:€128.00

Per saldo:€-122.00

Steun ons nu!

Laatst bijgewerkt
op 16-04-2024

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

Mallnitzer Tauernbahnstrecke ÖBB N Spoor door Modellbahnwagen
Vandaag om 00:35:59
25 jaar geleden door Willem1951
18 april 2024, 23:43:22
NS 8400 van Werps door Huup
18 april 2024, 23:17:50
EifelBurgenBahn door Reinout van Rees
18 april 2024, 23:17:45
Bisonkit verdunner door Deetrein
18 april 2024, 23:16:25
Ronald en Wanda's "Southern Comfort" swamp layout! door Ronald Halma
18 april 2024, 23:15:37
Traintastic - modelbaan besturingssoftware (gratis en open source) door reinderlf
18 april 2024, 23:02:30
Vergelijkings-/conversietabel modelverven door Rob Ellerman
18 april 2024, 22:37:44
Aachenau West door MichielB
18 april 2024, 22:22:36
"Nederlandse" modellen door Marc tramt
18 april 2024, 21:56:41
Bouw van materieel 40 treinstellen door FRIE
18 april 2024, 21:50:17
Onlangs gespot - gefotografeerd, de foto's door Thom
18 april 2024, 21:24:49
US diorama in H0 door basjuh1981
18 april 2024, 21:19:01
Pfarrerwinkel bahn door Eric v C
18 april 2024, 21:16:29
Bouw NS C 8605, BC 6012 en C 6820 door prutser
18 april 2024, 21:09:01
Een stukje Odsherreds Jernbane (OHJ) door Noordernet
18 april 2024, 20:44:22
BMB-Module: “Corfe Castle Station” door MichielB
18 april 2024, 20:24:46
Mijn eerste H0-modeltreinbaan in aanbouw door MichielB
18 april 2024, 20:05:30
Stationsplein Baden Baden door Dion
18 april 2024, 19:04:45
20 en 21 april MobExpo door renenstimpie
18 april 2024, 18:53:42
LS Models 2024 door 4020 281-4
18 april 2024, 18:03:40
Ervaringen met bezorgdiensten (PostNL, DHL, etc) door roco
18 april 2024, 17:54:18
Ombouw/Pimpen Bolle neuzen door bollen neus
18 april 2024, 17:48:50
"Litter Bin" voor Brits spoor en Britse modelspoorprojecten door Hans van de Burgt
18 april 2024, 17:09:15
Kleine Baan in H0 (≤ 0.5m²) door Jack Black (NS1220)
18 april 2024, 17:02:09
Frans/Belgisch H0e baantje door Jack Black (NS1220)
18 april 2024, 16:49:52
Toon hier je nieuwe (model-) spooraanwinst(en)... door Pauldg
18 april 2024, 16:03:04
Micromotor inbouwen in fleischmann tandradlok? door Besselspoor
18 april 2024, 15:22:30
Oude metalen trafo's gebruiken....... door Benelux795
18 april 2024, 14:17:23
Grenzbahnhof Ellrich ( DDR ) in schaal TT door spoorzeven
18 april 2024, 14:07:57
  

Auteur Topic: Snelheidsregelaar met Arduino Uno en TA8050.  (gelezen 16463 keer)

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #45 Gepost op: 20 december 2014, 16:25:39 »
pinMode is inderdaad niet nodig voor analogWrite() maar wel best practice. Ook zorgt dit ervoor dat de pin gelijk laag getrokken wordt bij het opstarten en niet pas in de eerste keer dat de loop doorlopen wordt. Maar aangezien de bootloader toch even tijd inneemt met opstarten zijn de pull downs net zo makkelijk.

't vreemde was juist dat dat op hol slaan ook gebeurde met de pinMode er nog in. Met de weerstandjes was het over...  ???

Citaat
Ga je een situatie maken waarin left en right tegelijk true zijn?  ;D

dat weet je bij mij maar nooit...  8)

Max
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #46 Gepost op: 20 december 2014, 16:38:21 »
Dan hebben de pinnen flink de nijging omhoog te floaten (in goed Nederlands  8) ). Met opstarten hangt de Arduino zeker een seconde in de boatloader dus dan wordt de pin nog niet laag getrokken door de pinMode(). Pull down weerstanden is dan een goed idee :)


Timo
Verzonden vanaf mijn desktop met Firefox

Fritsprt

  • Offline Offline
  • Berichten: 2615
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #47 Gepost op: 20 december 2014, 17:51:08 »
@Timo, wat is de reden dat de elco na de 78xx niet te groot mag zijn? Ik wil ook graag nog wat leren.

Gr. Frits
Groet Frits

Timo

  • Team encyclopedie
  • Offline Offline
  • Berichten: 4656
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #48 Gepost op: 20 december 2014, 18:04:55 »
twee redenen, eerste is de laadstroom die de 78xx dan moet verwerken maar waar ze (als ik me goed herinner) ook voor waarschuwen in de handleiding is dat hij instabiel kan worden. Dus beter zware elco's voor de 78xx (kan hij ook meer lading opslaan) en dan alleen een kleine als ontstoring.

Timo
Verzonden vanaf mijn desktop met Firefox

Fritsprt

  • Offline Offline
  • Berichten: 2615
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #49 Gepost op: 20 december 2014, 18:17:53 »
Klinkt logisch. Nu zit er 100n in de afgaande kant, dat is volgens mij tegen hf storing. Voor afvlakking kan 100 u geen kwaad.
Nu ik beter kijk zie ik C1, 10u in de voeding zitten. Dus toch afvlakking
« Laatst bewerkt op: 20 december 2014, 18:21:07 door Fritsprt »
Groet Frits

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #50 Gepost op: 20 december 2014, 18:26:37 »
Die 10u moet volgens het datasheet van de firma Toshiba zo dicht mogelijk op de TA 8050 worden gemonteerd.
Wie ben ik om daar aan te twijfelen...  ;D

M'n scoop ziet trouwens zonder geen verschil.  8)

Max.
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Fritsprt

  • Offline Offline
  • Berichten: 2615
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #51 Gepost op: 20 december 2014, 18:51:51 »
Hallo Max, ik schreef dat die 10U voor de afvlakking is maar dat is onjuist. Die is voor de buffering ingeval je stroompieken gaat trekken. Dat is ook de reden dat hij dicht bij die 8050 moet zitten ivm minimale weerstand. In de praktijk zal e.e.a. wel meevallen zoals je op de scoop kan zien.
Groet Frits

Menno

  • Offline Offline
  • Berichten: 3342
    • Mijn van-alles website
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #52 Gepost op: 20 december 2014, 23:04:24 »
@Timo, wat is de reden dat de elco na de 78xx niet te groot mag zijn? Ik wil ook graag nog wat leren.
twee redenen, eerste is de laadstroom die de 78xx dan moet verwerken maar waar ze (als ik me goed herinner) ook voor waarschuwen in de handleiding is dat hij instabiel kan worden. Dus beter zware elco's voor de 78xx (kan hij ook meer lading opslaan) en dan alleen een kleine als ontstoring.
Het grootste bezwaar is puur het 'optillen' van de uitgang ten opzichte van de ingang.
Als om wat voor reden dan ook, iets de uitgang langer van spanning blijft voorzien dan de ingang en de uitgang krijgt een hogere voedingsspanning te verwerken dan de ingang, dan loopt het met grote kans fout af voor de 7800 regelaar...

Er wordt daarom nog wel eens een beschermingsdiode over de regelaar geplaatst.

@ Fritsprt: hoe snel is je scoop? Naaldpulsen (beter bekend als 'spikes') zijn vaak moeilijk zichtbaar met de gemiddelde scoop

Fritsprt

  • Offline Offline
  • Berichten: 2615
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #53 Gepost op: 20 december 2014, 23:32:10 »
Het ging om de scoop van Max en om de invloed van de 10 u elco. En volgens mij zit de 100n erin tegen de spikes
Groet Frits

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #54 Gepost op: 20 december 2014, 23:38:46 »
En ik ga eerst proberen of het gaat zonder spanningsregelaar want volgens Timo moet dat goed gaan...  :)

Trouwens het idee van minder onderdelen staat me wel aan.  (y)

mvg,

Max.
« Laatst bewerkt op: 20 december 2014, 23:40:32 door Max Roodveldt »
"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

Max Roodveldt

  • Offline Offline
  • Berichten: 258
  • 't is maar 'n spelletje...
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #55 Gepost op: 25 december 2014, 12:26:10 »
Omdat ook ik ’t niet kan laten aan een goede schakeling te rommelen…

Een van de vervelende eigenschappen van een Arduino is dat ‘ie lijdt een vorm van geheugenverlies - ingestelde minimum en maximum snelheden gaan bij ’n reset verloren.

Voor de goede orde: in bijgaand schema wordt met P3 de snelheid geregeld volgens het inmiddels bekende principe: links – stop – rechts met een regelbereik van 100% - 0 – 100% (255 - 0 - 255).



/*****************************************************************************
versie met potmeters voor links/stop/rechts, minimum en maximum snelheid.
*****************************************************************************/

// libraries
#include <Wire.h>
#include "Adafruit_LEDBackpack.h"
#include "Adafruit_GFX.h"

Adafruit_7segment display = Adafruit_7segment();

const int PwmDl1 =  9;                           // Dl1 TA8050 H-bridge left
const int PwmDl2 = 10;                           // Dl2 TA8050 H-bridge right
const int SpeedP =  0;                                 // speed potentiometer
const int MinPot =  1;                         // minimum speed potentiometer
const int MaxPot =  2;                         // maximum speed potentiometer
const int ButMin =  0;                                // button minimum speed
const int ButMax =  1;                                // button maximum speed

bool  left     = false;
bool  right    = false;
int   minSpeed =   0;
int   maxSpeed = 255;
float factor   =   1.0;

/****************************************************************************/

void setup() {

  // set display
  display.begin(0x70);
  display.setBrightness(7); // 0..15

  // set PWM frequency timer 1 to 31,25 kHz.
  TCCR1B = TCCR1B & 0b11111000 | 0x01;

  // set input pins
  pinMode(ButMin, INPUT_PULLUP);
  pinMode(ButMax, INPUT_PULLUP);
}

/****************************************************************************/

void loop() {

  int value = analogRead(SpeedP) / 2;                  // read speedP: 0..511
  int cycle = 0;

  // value: 0..249 = left, 250..260 = deadband, 261..511 = right   
   
  value < 250 ? left  = true: left  = false;
  value > 260 ? right = true: right = false;

  if (left) {                       // duty cycle between minspeed - maxspeed
    cycle = minSpeed + int((249.0 - value) * factor);
    analogWrite(PwmDl2, 0);
    analogWrite(PwmDl1, cycle);             // write duty cycle to PWM PwmDL1
  }
   
  if (right) {                      // duty cycle between minSpeed - maxSpeed
    cycle = minSpeed + int((value - 261.0) * factor);
    analogWrite(PwmDl1, 0);
    analogWrite(PwmDl2, cycle);             // write duty cycle to PWM PwmDL2
  }
   
  if (!left && !right) {
    analogWrite(PwmDl1, 0);
    analogWrite(PwmDl2, 0);
 
    if (digitalRead(ButMin) == 0) {
      cycle  = minSpeed = analogRead(MinPot) / 4;                   // 0..255
      factor = (maxSpeed - minSpeed) / 250.0;
    }
 
    if (digitalRead(ButMax) == 0) {
      cycle  = maxSpeed = analogRead(MaxPot) / 4;            // minSpeed..255
      factor = (maxSpeed - minSpeed) / 250.0;
    }
  }
 
  display.println(cycle);
  display.writeDisplay();
 
}

/****************************************************************************/


Omdat proefondervindelijk is vastgesteld :) dat dit zowel aan de onder- en de bovenkant verbetering behoeft kunnen we dit aanpassen. Tijdens stilstand (0) kan als schakelaar S1 wordt gedrukt met P2 de minimale snelheid worden ingesteld en als schakelaar S2 wordt gedrukt met P1 de maximale snelheid. Bij voorbeeld: van stap 30 tot stap 127 (10%..50%). Dit wordt net zolang herhaald tot het gewenste resultaat is bereikt…

Als nu de Arduino wordt gereset gaan deze instellingen verloren, maar…: als er nu even op S1 en S2 wordt gedrukt worden de potmeter instellingen weer geladen en kunnen we verder waar we gebleven waren. Wederom blijkt dat er voor elke oplossing een probleem is.

Nog ‘n probleempje: als ’n loc is warm gedraaid zijn de resultaten anders dan koud uit de doos. Warm draaien doe ik op een ovaaltje; hoe dat straks op mijn baantje moet weet ik nog niet. Misschien voorgloeien? Het zijn tenslotte allemaal diesels… 8)

Uit het schema blijkt dat ik de spanningsregelaar heb verwijderd, alsmede de ontstorings-condensatoren – het werkt net zo goed (uiteraard).

Om de instellingen zichtbaar te maken wordt een display gebruikt; dat display staat niet in dit schema maar wel in de software – sorry.  :-[

Wordt vervolgd…

Mvg,

Max.

"And these visions of Johanna are now all that remain" - Bob Dylan (1966)

De Stoker

  • Offline Offline
  • Berichten: 783
  • H0 - TC - Digirails - KL 8.2 1920-1950
Re: Snelheidsregelaar met Arduino Uno en TA8050.
« Reactie #56 Gepost op: 09 februari 2015, 11:37:54 »
Mooi overzicht en ook netjes de codes overzichtelijk bij in het verhaal. Ben inmiddels ook aan de Arduino's, me nog wat aan het inwerken maar het is erg mooi spul.