http://www.arjan-swets.com
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
https://sites.google.com/site/smallbasicinterpreters/
deze is geschreven in visual basic:
http://ajlopez.wordpress....e-basic-like-interpreter/
@NME... uiteraard "omdat het kan "
Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.
Nu hebben ik geen ervaring ansicht met Ladder, maar het klinkt als een redelijk beperkte taal die in principe nog wel om te zetten zou moeten zijn naar een tokenstream en vervolgens linear de tokens afwerkt. Het wordt pas leuker en lastiger op het moment dat je meerdere processen parallel gaat lopen lopen en interactie met elkaar laat hebben.
Driving a cadillac in a fool's parade.
tja waarom, nou in de software moet ook iets komen van visualisatie enzo... maar zou zo maar leuk zijn om in een soort eigen taal die electronica aan te sturen, en dat je dat dan kan save, enz enz....NMe schreef op dinsdag 05 augustus 2014 @ 14:49:
Waarom zou je dat willen?Als je het per se wil zou je een soort van parser kunnen schrijven die je eigen taaltje omzet naar VB-code maar dat gaat verre van snel zijn of lekker werken. Wat schiet je daarmee op?
vooral om er wijzer van te worden..... is dat een goede reden....?
hoeft niet echt basic te worden, iets met AND en OR poortjes... zou ook leuk zijn....
verlopig heb ik nog geen idee hoe ik moet beginnen.. :-)
http://www.arjan-swets.com
MSDN: Generating and Compiling Source Code from a CodeDOM Graph
Kan je @runtime stukken c# of vb code (o.a in memory) compilen en uitvoeren, mee communiceren etc.
Lekker op de bank
Master of questionable victories and sheer glorious defeats
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
http://www.arjan-swets.com
Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein
Als ik dit lees wil je soort ladder editor gaan maken die met jou hardware kan praten. En hierdoor kun je in je ladder editor visueel de status van je IO weergeven?swets schreef op dinsdag 05 augustus 2014 @ 15:10:
[...]
tja waarom, nou in de software moet ook iets komen van visualisatie enzo... maar zou zo maar leuk zijn om in een soort eigen taal die electronica aan te sturen, en dat je dat dan kan save, enz enz....
vooral om er wijzer van te worden..... is dat een goede reden....?
hoeft niet echt basic te worden, iets met AND en OR poortjes... zou ook leuk zijn....
verlopig heb ik nog geen idee hoe ik moet beginnen.. :-)
Zoals hieronder is weergegeven, contacten met groene omlijning zijn een logische 1 en zonder een logische 0?

RSLogix 500
...
dit systeem bestond uit een computer deel, welke je had voor MSX, P2000, Commodore 64/128 en een Isa kaart voor de PC... (ja ISA, zo lang geleden.... :-) )
uit dat computerdeel kwam een lintkabel, waar je connectors op kon persen. En in die connectors kon je dan buiten delen zetten. er waren kaartjes met 8 inputjes,8outputjes , adc 8 bits, adc 12 bits, dac 8bits en een dac12 bits...
Ik ben begonnen met dit systeem op de MSX, en later op de PC... en dat vond ik toen ook het leuke van het systeem.
elk kaartje had een adres, en je kon 255 input en 255 output kaartjes aan de computer hangen....
Nu heb ik pas 2 nieuwe kaartjes gemaakt... Een computerdeel voor de PC, welke via USB werkt...
en ik heb bijvoorbeeld een buitendeel gemaakt, een kaartje waarmee je 8 RC servo kan besturen...
http://msx.hansotten.com/index.php?page=ptc-uniface (meer info over het vroegere Uniface)
Het allemaal aansturen gewoon via visual basic werkt prima....
Maar wat me leuk lijkt, en daar ging mij vraag dus eigenlijk over.... Een soort van IDE maken rondom dit systeem....
dus iets van een Editor, waarmee je in kan stellen welke kaarten er aan hangen , plus de bij hoorde adressen....
iets van schermen waar mee je de I/O zou kunnen vieuwen....
en iets van een taal ( dus hoef niet Basic te zijn.... mag ook zoiets als ladder zijn) om eigen programmaatjes te schrijven, en te laten runnen in die IDE..en natuurlijk kunnen laden en save....
en waarom..... ja waarom niet... je moet toch iets te hobby-en hebben...
[ Voor 3% gewijzigd door swets op 14-08-2014 09:09 ]
http://www.arjan-swets.com
Ik ken het specifieke project/systeem niet maar weet wel dat dergelijke projectjes in die tijd vrij gebruikelijk waren. Daar is in de jaren 90 flink de klad in gekomen omdat de nieuwe bus systemen in tegenstelling tot de ISA bus veel minder geschikt waren om zelf kaarten voor te ontwerpen. Volgens mij vooral doordat de frequenties omhoog gingen, er complexere decoders nodig waren en omdat het zelf maken van kaarten voor de MCA/EISA bus fysiek een stuk lastiger was. Ik denk dat de meeste hobbyisten tegenwoordig kiezen voor microcontrollers als de Arduino. Maar goed, ik begrijp dus dat jouw elektronica dus direct (via USB) aan de PC hangt.swets schreef op donderdag 14 augustus 2014 @ 09:04:
Ik weten niet of er mensen zijn die nog van het bestaan weten?, maar vroeger had je het Uniface systeem van PTCC ( Philips Thuis Computer Club)
dit systeem bestond uit een computer deel, welke je had voor MSX, P2000, Commodore 64/128 en een Isa kaart voor de PC... (ja ISA, zo lang geleden.... :-) )
uit dat computerdeel kwam een lintkabel, waar je connectors op kon persen. En in die connectors kon je dan buiten delen zetten. er waren kaartjes met 8 inputjes,8outputjes , adc 8 bits, adc 12 bits, dac 8bits en een dac12 bits...
Ik ben begonnen met dit systeem op de MSX, en later op de PC... en dat vond ik toen ook het leuke van het systeem.
elk kaartje had een adres, en je kon 255 input en 255 output kaartjes aan de computer hangen....
Nu heb ik pas 2 nieuwe kaartjes gemaakt... Een computerdeel voor de PC, welke via USB werkt...
en ik heb bijvoorbeeld een buitendeel gemaakt, een kaartje waarmee je 8 RC servo kan besturen...
http://msx.hansotten.com/index.php?page=ptc-uniface (meer info over het vroegere Uniface)
Zoals Basti504 ook al aangeeft is een ladder diagram waarschijnlijk de meest voor de hand liggende oplossing in dit geval.Het allemaal aansturen gewoon via visual basic werkt prima....
Maar wat me leuk lijkt, en daar ging mij vraag dus eigenlijk over.... Een soort van IDE maken rondom dit systeem....
dus iets van een Editor, waarmee je in kan stellen welke kaarten er aan hangen , plus de bij hoorde adressen....
iets van schermen waar mee je de I/O zou kunnen vieuwen....
en iets van een taal ( dus hoef niet Basic te zijn.... mag ook zoiets als ladder zijn) om eigen programmaatjes te schrijven, en te laten runnen in die IDE..en natuurlijk kunnen laden en save....
en waarom..... ja waarom niet... je moet toch iets te hobby-en hebben...
Zelf programmeren van een omgeving waarin je ladder kunt programmeren en daar een bijbehorende 'interpreter' voor schrijven lijkt me echter een behoorlijk pittige klus. De meeste pakketten die dat soort functionaliteit bieden zijn behoorlijk complex, prijzig en specifiek voor bepaalde PLC hardware. Ik heb in het verleden wel eens zijdelings wat gehoord over het team dat deze software voor Mitsubishi ontwikkelde en dat vormde toch wel een behoorlijke uitdaging.
Maar goed, het zal er ook wel van afhangen hoe ingewikkeld je het wilt maken. Ik denk dat je in ieder geval wel behoorlijk wat programmeerervaring nodig hebt en daarnaast natuurlijk wat kennis van de interne werking van een (soft) PLC systeem. Ladder wordt voor zover ik weet in de praktijk omgezet naar een soort van machine code die daarna door een VM wordt uitgevoerd. Aangezien ladder eigenlijk een declaratieve taal is werkt dat uitvoeren wat anders dan bij een imperatieve taal. Alle instructies worden uitgevoerd op basis van de status van de in- en uitgangen waarna vervolgens alle uitgangen gelijk geupdate worden met de resultaten.
De PLC systemen die ik ken mappen de I/O modules naar een range in de I/O map. Module 6 met digitale ingangen komt dan bijvoorbeeld op I80-I99, module 7 met uitgangen op O20-O27. Zoiets kan je voor je eigen elektronica ook maken om een eenvoudige abstractie laag tussen de hardware en software aan te brengen.
Als je visueel wilt programmeren zal je dus naast de eerder genoemde VM een editor nodig hebben en functionaliteit om het grafische ladder diagram om te zetten naar de interne instructies voor de VM.
Op zich zullen er ongetwijfeld om iets soortgelijks te bereiken maar dit is een beproefde manier van werken die volgens mij door redelijk wat PLC systemen wordt gebruikt.
Master of questionable victories and sheer glorious defeats
Alhoewel LD best veel gebruikt wordt zie je toch dat er een verschuiving plaatsvindt naar bijvoorbeeld SCL omdat deze taal beter de mogelijkheden van moderne automation hardware dekt. Misschien dat nu de oude S5 rotten in het vak een voor een omvallen er eindelijk eens wat vaart komt in de modernisering van de technische automatisering
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.