python class
soort van subroutine?
Of de eigenschappen van een variabele?
Ton
Hi Ton,
Python is zoals je weet een programmeertaal. Python heeft mogelijkheden voor Object Oriented Programming. Een object is idealiter een representatie binnen je programma van iets dat zich in de 'echte' wereld bevindt. Het is daar een abstractie van binnen in je programma.
Een 'class' is zeg maar een definitie-model voor een object. Zo zeg je bijvoorbeeld om een relais object te maken (instantiëren):
MyRelayHandlerObject = RelayHandlerClass()
Deze regel maakt een object met de naam "MyRelayHandlerObject" binnen je programma. We noemen dit een instantie van de class "RelayHandlerClass". Vervolgens kunnen we bijvoorbeeld het relais omzetten door iets als:
MyRelayHandlerObject.CloseRelay(boardAddress, outputPin)
of
MyRelayHandlerObject.OpenRelay(boardAddress, outputPin)
OpenRelay en CloseRelay worden "methods" genoemd. Zeg maar operaties die je op het object kunt uitvoeren.
Het mooie van objecten is dat je de 'nitty-gritty' van de afhandeling van de diepere technische lagen elektronica (in dit geval de I/O interface-chip MCP23017) voor het programma verbergt binnen het object. Je denkt dat één keer over na en test je class en je objecten. Dan kun je er vervolgens in wat meer leesbare taal gebruik van maken zonder dat je elke keer weer die Datasheets in moet duiken.
Met andere woorden, je maakt met een object een functioneel benadering mogelijk van potentieel ingewikkelde technische lagen daar onder.
HTH,
Gerard
De Youtube plugin werkte even niet, dus hier een nieuwe poging:
John,
Ik heb de "delen" link van Youtube gepakt, en de https veranderd in http. Met bovenstaand resultaat.
Wat doe ik fout? Of werkt de plugin nog niet?
Ik heb de plugin verwijderd, werkte niet. Nu een nieuwe geïnstalleerd die het automatisch moet doen. Dus alleen de link naar het filmpje plaatsen zou voldoende moeten zijn.
JohnT
Mooi John!
Bedankt.
Zo, een nieuwe oplossing gevonden.
Ik werkte met per kanaal:
- een basisweerstand
- een NPN transistor
- een blusdiode (anti-parallel aan het relais)
Voor 16 relais zou dat 48 onderdelen opleveren.
Nu vond ik een chipje, de ULN2803, met acht zogeheten Darlington Transistor Arrays in één behuizing. Daar heb ik er dus twee van nodig. Dat scheelt lekker veel ruimte om de print later.
In mijn vorige filmpje kun je de opstelling zien voor acht uitgangen op basis van de 'oude' werkwijze. In het filmpje hieronder - in minder ruimte - de nieuwe oplossing voor 16 uitgangen!
ULN2003 kan volgens mij ook.
Ik heb hier een kant en klaar printje.
komt bij dealextreme vandaan.
Ik kreeg het bij een stappenmotortje.
Ton
Ben ik ook tegengekomen Ton, maar die heeft slechts 7 kanalen.
In een digitale omgeving is dat niet het handigste aantal... 😉
Gerard
Bezig met het maken van de prototype prints.
Eerst heb ik het laten maken van custom printjes overwogen, maar dat wordt me te duur. Prototypen op Euro-prints kan net zo goed.
Zelf etsen?
JohnT
Is voor Gerard denk ik niet interessant.
Te weinig printjes en te veel rompslomp.
Ik heb het zelf vaak genoeg gedaan in het verleden.
Met een gezichtsbruiner en uitgeprinte films op papier ging dat uitstekend.
Ton
Och het is een aardig experiment, als je het onder de knie hebt kun je later nog is leuke onderdelen uit messing etsen.
JohnT
Is voor Gerard denk ik niet interessant.
Te weinig printjes en te veel rompslomp.
Klopt...
Dit is ff wat meer werk, maar wel bevredigend.
Och het is een aardig experiment, als je het onder de knie hebt kun je later nog is leuke onderdelen uit messing etsen.
JohnT
Ja en nee John.
Ja het is in principe het zelfde proces.
Nee , je werkt met heel andere materialen en zuren.
Ton