De blus diodes komen bij de spoelen van de wissels te zitten, of kan ik ze beter er op de print bij solderen?
Na veel test en onderzoek werk heb ik besloten om voor de Arduino Nano te kiezen, prijs technische de beste keuze,
om het AAMS systeem te gaan bouwen, ook word de indeling van de sturing veranderd naar een bloksturing, dwz. dat ik een Arduino Nano inzet per blok en de motordriver( tweevoudig ) verdeel over twee blokken,
op deze manier kan ik de twee blokken synchroniseren zodat er geen sluiting kan ontstaan tussen de twee blokken,
hoe ik dat ga doen met de rest van de blokken moet ik nog verder uitzoeken.
IK ben er al bezig mee geweest maar het lukt mij nog niet om het werkend te krijgen , zo moeilijk kan dat niet zijn, ik zal wel weer wat over het hoofd zien
In de pen zit nog een bedienings-paneel waarmee ik ook de AAMS sturing kan bedienen, dit wil ik gaan doen dmv or-poorten, dit project moet nog verder uitgewerkt worden.
Schema (kan nog een foutje in zitten)
#include <SPI.h>const byte LatchPin = 10;//Volgende zijn vanzelf door hardware SPI//Clock = 13//dataInPin = 12//dataOutPin = 11byte dataIn;byte dataOut;void setup(){ SPI.begin(); //configureer de SPI uitgangen SPI.beginTransaction(SPISettings(1000000, MSBFIRST, SPI_MODE0)); //stel in pinMode(LatchPin, OUTPUT);}void loop(){ updateShiftRegisters();}void updateShiftRegisters(){ digitalWrite(LatchPin, HIGH); //Latch alle regsters //Gebruik SPI ahrdware. dataIn = SPI.transfer(dataOut); digitalWrite(LatchPin, LOW); //Reset voor volgende keer.}
Het 74HC165 ic heb ik eerst moeten ontwerpen voor Fritzing, staat niet in de onderdelen lijst van Fritzing.
Ik gebruik BD681 NPN Power Darlington transistor voor de aansturing van mijn wissels, als ik het goed in de datasheet heb gekeken zie ik tussen de C->E een blus diode zitten, vandaar dat ik in eerste instantie geen blusdiode heb zitten.
Het moet een flexibel bloksysteem worden, en als het nodig is kan ik het blok makkelijker uitbreiden.
Ik ga dat systeem niet gebruiken, ik blijf bij I2C voor de communicatie tussen de blokken.
Het is de bedoeling om de baan zowel met de Arduino en het bedienings-paneel te sturen en dat tegelijkertijd, ik wil de Arduino en de handbediening van elkaar scheiden, als per ongeluk, tegelijk de handbediening als de Arduino dezelfde wissel stuurt er geen rare dingen kunnen gebeuren. Overigens moet het een Xor gate zijn die ik daarvoor gebruik.
Q7' is de uitgang naar de volgende shiftregister.
Ik ben al een tijdje niet aan het programmeren, omdat ik het AAMS systeem eerst wil ontwerpen en proef printen gebouwd wil hebben, deze printen kan ik namelijk ook zonder Arduino testen.Als ik daar mee klaar ben, ga ik me buigen over het programmeer werk.Ik ben met teveel verschillende dingen bezig, met betrekking tot het AAMS systeem bezig geweest, zodat ik het spoor even bijster was.
Het viel achteraf wel mee, in plaats van het schema/ breadboard/ icon symbool met inktscape aan te passen, lees ik in de svg file in, in een tekst editor en pas daar de teksten aan, interesse dan zet ik de tekst versie van een svg file in dit draadje.
vr3 : Het moet een flexibel bloksysteem worden, en als het nodig is kan ik het blok makkelijker uitbreiden.(...)de AAMS sturing word nu ontworpen als bloksysteem, waarbij elke Arduino(NANO) een blok is.
Is het flexibeler als elk blok apart een schakeleenheid vormt, of is dat zo omdat een shield per NANO niet meer tegelijk kan afhandelen, of heeft dat er niets mee te maken?
Je stelt je voor dat je per 2 blokken motordrivers hebt, waarom niet 1 per blok?Ik begrijp dat Timo voorstelt om de motordrivers per NANO (of pro mini) te rangschikken, en blokken per twee (of meer) per NANO onder te brengen. Dat is ongetwijfeld veel goedkoper.
Zouden er ook 6 blokken op een NANO kunnen? Wat vormt de inperking?
Ik mompel ook maar wat, maar ja, ik zit met 20-30 blokken, en wat daarmee te doen.En een NANO per blok wordt dan ook weer begrotelijk (en hoe overzie je dat dan weer).
Als ik de schema's volg, dan rijg je de NANO's aan elkaar tot een soort netwerk. Daarbij is er eentje master, en de rest is slave. Lijkt mij dat de master ook de bezetmeldingen verwerkt en de seinen kleurt, waardoor de slaafjes uitvoerend werk verrichten op blokniveau.
Je stelt je voor dat je per 2 blokken motordrivers hebt, waarom niet 1 per blok?Ik begrijp dat Timo voorstelt om de motordrivers per NANO (of pro mini) te rangschikken, en blokken per twee (of meer) per NANO onder te brengen. Dat is ongetwijfeld veel goedkoper.Zouden er ook 6 blokken op een NANO kunnen? Wat vormt de inperking?
Voor het schakelen van een relais heb je inderdaad een goeie voeding nodig. Maar ook genoeg ontkoppeling op de voeding. Een extra condensator kan helpen om de inschakelpuls op te vangen. Ook moet je nooit de on-board 5V regulator van de Arduino om andere dingen dan chips en een paar ledjes te voeden. Daarvoor is hij simpelweg te licht. Gebruik hiervoor een externe (DC-DC converter) regulator.
Als voorbeeld neem ik even de schakeling "LM311 analog to digital converter" door de output van de print op een, laten we zeggen: Or of Xor poort te zetten kunnen we al een via een transistor op de uitgang van de Or of Xor poort een relais aansturen (even simpel gezien, het werk echter wel), het werkt zelfs al door een transistor type PNP op deze uitgang te zetten.
LET OP! dit is even simpel gedacht, maar het werk wel, probeer het maar eens uit als je het niet geloofd. (je kunt het ook testen met twee elektromotoren, wel even een transistor type PNP gebruiken! )