kennis-ervaring met python (Computertechniek)

door loek @, Exloo (Drenthe), 30-07-2016, 14:41 (2798 dagen geleden) @ Maarten Bakker
Gewijzigd door loek, 30-07-2016, 14:51

Je zou kunnen proberen om je probleem gewoon hier te posten en eens te zien of dat helpt. Soms werkt het al als je een wedervraag of een idee leest van iemand die weliswaar bekend is met programmeertalen in het algemeen maar niet zo met Python in het bijzonder.

Hallo Maarten,

Ik zoekt eigenlijk iemand met ervaring van in Python die kan zien wat ik fout doe. Zelf weet ik dus bijna helemaal niets van Python.
Waarom zou ik dan Python in eens willen gebruiken?

Het antwoord is:
Ik wil wat experimenteren met een HPIB bus. Daarvoor heb je als eerste een converter nodig. Op internet zijn veel type zelfbouw converters te zien. Ik heb gekozen voor het ontwerp dat heet AGIPIBI. Deze converter bestaat in dit geval uit een Arduino Mega die via de USB is aangesloten op de computer. De poorten van de Arduino gaan naar alle data lijnen van de HPIB bus.

Het programma dat dus de opdrachten naar en van de data bus van HPIB stuurt/leest is gemaakt in de Arduino omgeving en staat dus los van Python.

Om nu bijvoorbeeld een meetapparaat via de HPIB bus te kunnen aansturen moet je dus via de USB commando's kunnen sturen naar de converter. En reacties zowel van de converter als van het meetapparaat weer kunnen zien op het computerscherm.

Ook daar zijn weer allerlei oplossingen voor. Maar bij het ontwerp van AGIPIBI waren ook deze stukken software mee geleverd. Echter deze waren geschreven in Python. Je zou dus denken dat hoort bij elkaar en zal dan ook wel snel werken zonder diepgaande kennis van Python.

Na veel gelezen te hebben leek mij Python wel geschikt voor wat ik eigenlijk van plan was.

De drie delen Python software die bij AGIPIBI geleverd waren zijn:

1e Voorbeeld om een oscilloscoop van tektronix uit te lezen
2e Software die de control lijnen van de AGIPIBI interface aanstuurt
3e software die de meldingen vanuit de Arduino vertaald.

Dus het 2e en 3e stukje software zijn er altijd. En het eerste stukje zou steeds per meetapparaat verschillend kunnen zijn. Of zelfs dat er in dat moduul meerde meetapparaten verwerkt zijn. Bijvoorbeeld je geeft een generator een opdracht voor niveau en frequentie. En daarna geeft je een niveau meter de opdracht om het resultaat te meten. En daarna te presenteren in een grafiek of iets dergelijks.

De software modulen zijn allemaal van het type *****.PY
Je kan in een scherm van Python deze naam oproepen en dan wordt het programma uitgevoerd.

De bedoeling is dat je de naam van het eerste programma uitvoert.
In dat deel zit een import commando die de tweede aanroept en in dat tweede programma zit weer een import die het derde aanroept. Daarna kom je dus weer terug in het eerste en zo verder.

Nu daar zit nu mijn probleem. Het lukt op geen enkele manier om vanuit het eerste of tweede stukje software een ander moduul aan te roepen.

Er komt dan een foutmelding: "Value Error: Atemted relatieve import in non-pakage."

Natuurlijk ben ik gaan zoeken op internet naar deze melding en er zijn honderden oplossingen die ook allemaal weer verschillen zijn. Maar geen één werkt er bij mij. Ook bij de geleverde oplossingen zit dan weer zoveel extra zeer specialistische aanwijzingen dat je door de bomen het bos niet meer ziet.
Ik heb nog geen enkele simpele uitleg gevonden. Het lijkt wel of bij deze taal er geen simpele oplossing/beschrijving mogelijk is.

Na vele dagen van zoeken/uitproberen kom ik tot de conclusie dat het niet werkt door een denkfout. Zelf heb ik onvoldoende kennis van Python om er achter te komen waar deze fout zit. Zelfs alle tutorials heb ik doorgenomen en uitgeprobeerd maar niets helpt. Ik zoek dus iemand die echt weet hoe het werkt en zegt: dat doe je fout.

Met vriendelijke groet,

Loek


Complete draad:

 RSS Feed van berichtenreeks

powered by my little forum