Doel:€250.00
Donaties:€105.00

Per saldo:€-145.00

Steun ons nu!
Actie: steun €2.50 via de Wim Vink kalender 2021!

Laatst bijgewerkt
op 26-10-2020
Algemeen

De stichting

Recente berichten

Relaisbesturing of toch Arduino? door Erik Baas
Vandaag om 01:20:59
Station Apeldoorn, op foto's en ansichtkaarten door hmmglaser
Vandaag om 00:35:16
Postwagen/Dg HSM P445 / NS 2001 in messing. Schaal 0. door FritsT
Vandaag om 00:08:58
Grunn, NS modelbaan tijdperk IIIa door Rondje_HO
Vandaag om 00:06:46
NCS 7/8 tot NS 61 62 Maffei lok in spoor 0 door FritsT
30 oktober 2020, 23:43:46
DR4088 aansluiting en diodeschakeling door Klaas Zondervan
30 oktober 2020, 23:25:16
Een kleine baan in een grote schaal: Laden en lossen in 1:22.5 door NS1220
30 oktober 2020, 22:52:02
Digitaal pendelen met Lenz ABC-systeem - Esu Lokpilot V5 door VvKan
30 oktober 2020, 22:50:03
BR 81 met rookgenerator in O voor belachelijk lage prijs door Reinier Z.
30 oktober 2020, 22:39:18
Projekt 083-338 door 44
30 oktober 2020, 22:31:13
Multimaus programmeren : probleem 2 locs zelfde adres door Bahn-AG
30 oktober 2020, 22:24:40
Tortoise en DR4018 maakt een halve beweging door Klaas Zondervan
30 oktober 2020, 22:24:27
Rocrail gebruikersgroep door Hans1963
30 oktober 2020, 22:17:15
Waarom bij Lenz geen diodes bij ongedetecteerde railstukken? door Klaas Zondervan
30 oktober 2020, 22:01:24
Van Fleischmann spoor N, naar beginner Märklin spoor h0 digitaal door Bahn-AG
30 oktober 2020, 21:50:40
Ontraxs 2021 GEANNULEERD, nieuwe datum n.n.b. door Gerard van de Weijer
30 oktober 2020, 21:47:38
Toon hier je nieuwe (model-) spooraanwinst(en)... door roadster36
30 oktober 2020, 21:42:30
Ergensnergens in H0e door NS1220
30 oktober 2020, 21:41:42
Paul's model train stuff door Duikeend
30 oktober 2020, 21:38:19
NS modelbaan Hoekdam H0 door Rob E.
30 oktober 2020, 21:33:40
Kopen in de VS door Alexander
30 oktober 2020, 21:27:19
Laag-Baarlo door Mark Lin
30 oktober 2020, 21:26:56
Ervaringen met bezorgdiensten (PostNL, DHL, etc) door Rob E.
30 oktober 2020, 21:14:48
Spoor op industrieterrein Lage Weide door Jos_1972
30 oktober 2020, 21:08:35
Goederenloods Apeldoorn door Bart spruitje
30 oktober 2020, 21:05:22
EifelBurgenBahn door Reinout van Rees
30 oktober 2020, 20:59:08
Onlangs gespot - gefotografeerd, de foto's door Erik Mijd
30 oktober 2020, 20:24:05
De bouw van een modulebaan met Nederlands Landschap door AntonM
30 oktober 2020, 19:18:27
Philotrain NS C10c (ex. SS), kit 15c door ingenium
30 oktober 2020, 19:00:32
BNLS-Module: Grasland - de keerlussen met schaduwbakken door St00mboy
30 oktober 2020, 18:30:06
  

Auteur Topic: De CanBus komt naar Kranenberg, Arduino's en de CanBus  (gelezen 32537 keer)

meino

  • Offline Offline
  • Berichten: 881
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #135 Gepost op: 10 mei 2020, 23:01:35 »
Reinout

heb je een linkje naar die video?

Groet Meino
A clean desk is a sign of an empty mind

Kranenberg
De CanBus komt naar Kranenberg

Erik Baas

  • Offline Offline
  • Berichten: 287
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #136 Gepost op: 11 mei 2020, 01:30:52 »
derde toestand: stand onbepaald

Je zegt het zelf al: stand onbepaald, en dat mag je geen toestand noemen. Dat mag bovendien alleen als het object in rust is, en dat is het tijdens de overgang uiteraard niet.

bask185

  • Offline Offline
  • Berichten: 841
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #137 Gepost op: 11 mei 2020, 08:41:57 »
Bas: je lijkt booleans niet leuk te vinden? Waarom niet?
No offense maar volgens mij heb ik het 2x gezegd... letterlijk  ;D:
Reden 1: Ze nemen 1 hele byte geheugen in beslag. Als je er maar 1 heb in je programma, dan zei het zo. Heb je 8 booleans, dan gooi je dus 7 bytes weg.
Reden 2: Als je een derde state wilt toevoegen, bijvoorbeeld aan een bewegende wissel of aan een sein met 3 standen, en je bent vergeten dat je ooit zo 'dom' was om 'bool' ipv byte te tikken, dan heb je dus pech.

Voor deze reden alleen al, zou je al byte moeten tikken ipv bool. Een byte kan wat een bool kan en meer en een bool kan niet wat een byte kan. Een bool gebruiken ipv een byte is wat ik ook beschrijf als: 'shooting yourself in the foot.'. Je mag ook prima de woorden true en false gebruiken in arduino voor een byte type variabele.

Ik had in Processing trouwens nog eens een 3e probleem met een bool. Om mijn layout op te slaan, gebruik ik een .txt bestand. Er was een bepaald rail item en die had ook een bool.
Reden 3: Bij het opslaan werd de state van die bool opgeslagen met de woorden 'true' en 'false'. Ik had net mijn code ingericht om uit dat txt bestandje getallen uit te lezen en geen woorden. Ik verwachtte een '0' en een '1' maar kreeg dus iets anders. En ook deze ellende loste ik op door bool te vervangen door byte.

Dus daarom Reinout, gebruik ik nooit meer bools. Ze voegen helemaal niks toe behalve potentiele bugs.

Ik gebruik dus standaard bit fields voor precies dit.
struct {
    unsigned int seinStand: 2; // 2 bits
    unsigned int wisselStand : 2; // 2 bits
    unsigned int terugmelder : 1; // 1 bit
} status;  // gebruikt 1 byte aan geheugen

// gebruik:
#define STRAIGHT 0
#define CURVED 1
#define MOVING 2 // of UNDEFINED of TRANSITIONING of net wat je wilt
// nog een 4e stand voor een drieweg wissel is ook nog mogelijk.

status.wisselStand = MOVING ;

if( status.terugmelder ) {
// etc

Dit is ook 1 van de redenen waarom ik classes en objecten probeer te vermijden waar mogelijk. Als je 20 objecten maak in SW die allemaal 1 enkel bitje nodig hebben. Dan heb je dus minimaal 20 bytes nodig. En volgens mij kan je met de OO structuur geen bitfields toepassen die objecten samen kunnen delen.

Die atmega328 heeft slechts 2kb. Meestal volstaat dit en dan maakt het niet zoveel uit. Immers "unused space is wasted space", maar soms dan kom je er toch aan.

@Erik
Stand onbepaald is nog steeds een bestaande fysieke toestand. Wanneer puntje bij paaltje bij komt, mag een trein niet rijden over een bewegende wissel. Voor hetzelfde zit de wissel vast door een stukje ballast. Dan heb je dus wel degelijk de noodzaak om deze stand op te slaan in je software.

En @Reinout als je derde wissel state in een bool probeert te stoppen, nou dan kan je je ontspoorde trein gaan opruimen  ;D ;D ;D

Mvg,

Bas





Erik Baas

  • Offline Offline
  • Berichten: 287
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #138 Gepost op: 12 mei 2020, 01:03:46 »
Ik weet niet waar te beginnen... Kan eigenlijk alleen maar zeggen: als het jou goed bevalt is dat prima, maar ga het asjeblieft niet aanprijzen als "the way to go".

bask185

  • Offline Offline
  • Berichten: 841
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #139 Gepost op: 12 mei 2020, 08:13:06 »
Prima. Beter dat we de discussie staken, want hier gaan we niet uitkomen blijkbaar. Denk dat Meino er ook niet meer vrolijk van wordt :-[
(sorry Meino)

Mvg,

Bas

Reinout van Rees

  • Team forummoderators
  • Offline Offline
  • Berichten: 5662
  • Forummoderator
    • Persoonlijke website + weblog
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #140 Gepost op: 12 mei 2020, 14:56:09 »
Meino: deze video (link gaat naar 6:14) bijvoorbeeld. Het zat net iets anders dan ik me herinnerde: tijdens het omleggen knippert de "doel"-led. Maar goed.

Reinout
Bouw v/d EifelBurgenBahn (h0, zijlijn in de Eifel)
Eifelgeschiedenis (verhalen en video's over de Eifelburgenbahn)

meino

  • Offline Offline
  • Berichten: 881
Re: De CanBus komt naar Kranenberg, Arduino's en de CanBus
« Reactie #141 Gepost op: 12 mei 2020, 17:19:07 »
@Reinout, bedankt voor het linkje,.

@Erik en @Bas
Ik heb maar niet gereageerd, want het werd een welles/nietes gebeuren en dat is zinloos.
Om met Rudyard Kipling te spreken  "East is east and west is west, and never the twain shall meet".

Maar Bas laat ik je niet weerhouden om je mening te plaatsen.

Groet Meino
A clean desk is a sign of an empty mind

Kranenberg
De CanBus komt naar Kranenberg