Hallo Forumsmitglieder !
Dies ist mein erster Beitrag hier, ich hoff, ich mach das hier alles
halbwegs so, wie es sein sollte =)
Ich, Student, gerade mitten in meiner Diplomarbeit, muss außer meiner
Diplomarbeit noch ein FPGA-Projekt beenden, bei dem ich nicht recht
weiterkomme.
Und zwar geht es um Folgendes :
Mit Hilfe eines Altium Nano Board 3000, soll ein PT100 Sensor ausgelesen
werden und eventuell die Temperatur auf dem Board-Display angezeigt
werden.
Dieses Projekt wird anstatt eines Tests angeboten. Nun ist das Problem,
dass ich die Vorlesung bereits vor 4! Semestern hatte und einfach nicht
mehr viel davon weiß.
Ich habe nun einfach ein paar grundlegende Fragen, wie ich das ganze
anzugehen habe und allgemein zu FPGA's.
Ich hoffe ihr könnt mir da kurz weiterhelfen.
1. Die analogen Daten müssen erst mit einem AD-Wandler gewandelt werden
?
Diese sind ja auf dem FPGA Board implementiert.
Per VHDL steuere ich jetzt also einfach einen AD-Wandler an und sage ihm
was er zu tun hat, richtig ?
2. benötige ich dazu ein SCHEMATIC ? und wofür genau, sind die
SCHEMATICS da ? das hab ich nie richtig verstaden leider.
in der Vorlesung wurde leider einfach nur vorgemacht und wir sollen
nachmachen.
Den gesamten Ablauf stelle ich mir nun quasi so vor :
1. AD-Wandlung der Sensordaten
2. ja, hier haperts jetzt eigentlich schon...Was mache ich dann mit
meinen digitalen Daten ? Kann ich die jetzt schon direkt auslesen ?
letztendlich möchte ich erstmal einfach folgendes wissen :
1. Wozu genau benötige ich SCHEMATICS ? "deklariere ich hier quasi meine
"bauteile" die ich auf dem FPGA nutzen möchte ?
2. wie sieht der Ablauf meines Vorhabens in Form eines Blockschaltbildes
aus ?
das ganze hätte ich wahrscheinlich auch in 4 sätzen schreiben können,
sorry für den halben roman !
Danke für eure Hilfen schonmal !
Hast du denn zu deinem Nanoboard 3000 auch die passende Altium Lizenz ?
Bei dem Board sollte eine 1-Jahr Testlizenz bei sein für FPGA Design.
Das wirft natürlich gleich die 2. Frage auf, wie steht es um deine
Altium Kenntnisse ?
Gruß,
dasrotemopped.
Ich habe dasselbe Board. Ist ein feines Teil. Du solltest Dir zu
allererst, wie schon gefragt, die Lizenz klar machen. Wenn Dein Altium
läuft, geht es weiter. Falls die Lizenz nicht mehr da ist, jedes Board
hat eine Seriennummer, dafür gibt's die Soft-Edition von Altium, läuft
dann ein Jahr. Ansonsten einfach eine Studi-Lizenz für 100 EUR nehmen.
Da ist dann auch Board-Design dabei.
Zweiter Schritt: Die 14 Beispiele durcharbeiten, die in der
Altium-Installation dabei sind für FPGA.
Dritter Schritt: Abändern der Beispiele, z. B. AD-Wandler hinzu fügen;
anschauen, wie Du eigene Inhalte auf das Display bringen kannst.
Vierter Schritt: Dein eigenes Projekt in Angriff nehmen.
Ich hab das so gemacht, über die Weihanachts-Feiertage, hat prima
geklappt. Man braucht ca. zwei bis drei Wochen vom allerersten
Einschalten des Boards bis zum ersten eigenen Projekt.
Der müde Joe.
Hallo und erstmal danke für eure Antworten !
Da ich das Projekt direkt in der FH bearbeite, sind Lizenzen etc. alles
vorhanden !
Ich muss eigentlich nur direkt loslegen.
Ich wusste allerdings nicht, dass es Beispiele zum durcharbeiten gibt...
Vielleicht starte ich dann erstmal direkt mit diesen und schau ob ich
damit weiterkomme.
Erfahrung oder Altium Kenntnisse habe ich ansonsten nicht wirklich.
Bin eigentlich blutiger Anfänger und habe nur vor 4 Semestern, die
FPGA-Vorlesung unserer FH gehört, das meiste aber leider schon wieder
vergessen.
Unser Prof sagte aber, dass dieses Projekt eigentlich eines der
leichteren sei und man das auf jeden fall hinbekomme.
In die Programmiersprache VHDL kann ich mich auch glaub ich recht
einfach wieder einfuchsen, mein Problem besteht eher darin den Ablauf
meines Projektes zu erstellen...
Also quasi, womit fange ich an, was mache ich zuerst, was muss dann wie
passieren etc.
Wenn mir das jemand mit Hilfe eines Blockschaltbildes aufzeigen könnte,
würde mir das glaube ich schon ziemlich weiterhelfen !
Ach ja, und die Sache mit den SCHEMATICS, in die ich ja einzelne
Bauelemente einbauen kann oder muss ?!?! ist für mich immer noch
unverständlich...Wofür genau benötige ich die ?
Brauch ich die überhaupt oder kann ich das ganze auch nur mit dem
nötigen VHDL-Programm + Testbench realisieren ?
Danke !
Student schrieb:> Ach ja, und die Sache mit den SCHEMATICS, in die ich ja einzelne> Bauelemente einbauen kann oder muss ?!?! ist für mich immer noch> unverständlich...Wofür genau benötige ich die ?> Brauch ich die überhaupt oder kann ich das ganze auch nur mit dem> nötigen VHDL-Programm + Testbench realisieren ?
Nein, die Shematics brauchst du nicht zwangsläufig.
Das ist einfach nur eine Alternative Methode der Erstellung des
Programmierfiles.
Du kannst also entweder in einem Schematics Projekt deine Schaltung wie
sie später funktionieren soll zeichen, halt genau so wie du in
Eagle/AD/Target usw. wirklich einen Schaltplan eines HArdwareboards
zeichen würdest das diese Funktion hat -
ODER du erstellst ein VHDL Programm (bzw. auch Verilog, Abel usw)
Gruß
Carsten
Aha ok !
Danke, dann hat sich das mit den SCHEMATICS jetzt erstmal erledigt.
In Form eines Blockschaltbildes stelle ich mir das Projekt jetzt
ungefähr so vor :
1. -------- 2. ---------- 3a. --------------- 4. ----------
| PT100 | | AD- | |an serielle | |mit Multi-|
| TEMP. | ---> |Wandlung| ---> |Schnittstelle | ---> |meter U |
-------- ---------- |liefern | |auslesen |
--------------- ------------
3b. -----------
---> |auf Board- |
|display |
|auslesen |
-------------
-1. pt 100 liefert ne temperatur in form einer spannung.
-2. die spannung a/d wandeln (mit VHDL)
-3a. falls wir die daten mit multimeter auslesen sollen (steht noch
nicht fest), dann müssen die ja an eine Schnittstelle geliefert werden.
Mach ich das auch per VHDL-Programmierung ???
-3b. oder halt per Formel Spannung in Temp umrechnen und auf dem Display
anzeigen lassen.
Kann man das so machen oder fehlt da irgendwas wichtiges ?
Danke !
Student schrieb:> Kann man das so machen oder fehlt da irgendwas wichtiges ?
Sieht gar nicht so schlecht aus.
Du kannst Dir noch überlegen, wie Du prüfen kannst, ob die einzelnen
Blöcke richtig arbeiten und dann kann's losgehen.
Noch eine Frage:
Wie genau soll die Verbindung zwischen 3a und 4 aussehen?
Mein Multimeter kann Spannungen messen o.k.
Auch die Spannung an der seriellen Schnittstelle. Aber ich kann mit
meinem Multimeter nicht die Daten auf der seriellen Schnittstelle
dekodieren...
Du schon?
Duke
der AD Wandler auf dem Nanoboard3000 kann über SPI angesprochen werden.
Ist ein ADC084S021.
Der Display Controller ist ein ILI9320 mit Intel i80 bus interface.
Der Schritt 2 nach 3a und 3b könnte etwas größer werden, wenn man das
nur mit VHDL machen will.
Gruß,
dasrotemopped.
> Der Schritt 2 nach 3a und 3b könnte etwas größer werden, wenn man das> nur mit VHDL machen will.>> Gruß,>> dasrotemopped.
Ok ! danke erstmal !
Was genau meinst du mit "wenn man das NUR mit VHDL machen will."
Wie geht es einfacher bzw. nicht so komplex ?
ich gebe da mal ein paar Google würdige Reizwörter:
Opencore
Altium Openbus
Bibliotheksfunktionen
RTFM
Für nen Test muss man auch mal was selbst recherchieren.
Gruß,
dasrotemopped.
Student schrieb:> -1. pt 100 liefert ne temperatur in form einer spannung.> -2. die spannung a/d wandeln (mit VHDL)
Ohne das Altium Nano Board 3000 genau zu kennen, denke ich du wirst
schon ohne eine Zeile VHDL geschrieben zu haben, Probleme bekommen.
Der Grund: Ich habe noch keinen PT100 gesehen, der eine Spannung
liefert! (und ich habe schon sehr viele gesehen...)
Wenn du mit dem A/D-Wandler nur Spannung wandeln kannst, solltest du dir
vorher mal eine PT100-Tabelle zur Hand nehmen. Damit ermittelt du
erstmal den Temperaturbereich, den du abdecken (wandeln) willst. Da sich
der Widerstand des PT100 mit der Temperatur ändert und du eine
Spannung für den A/D-Wandler brauchst, benötigst du einen konstanten
Strom, der durch den PT100 fließt und dann kannst du am PT100 eine zum
Widerstand propotionale Spannung abgreifen und diese wird dann
gewandelt. Da der A/D-Wandler aber nur einen gewissen Spannungsbereich
überdeckt, solltest du dir hier vorher einige Gedanken machen, um eine
geeignete Stromstärke zu finden.
Soweit meine Anmerkung. Ich habe mir im Internet das Nano Board 3000 mal
kurz angesehen und konnte keinen Mess-Eingang für Widerstände finden.
Ich wundere mich, warum noch keiner vor mir hierauf aufmerksam gemacht
hat.
Generell solltest du das Problem in kleinere Teilprobleme aufteilen und
dir Schnittstellen schaffen, an denen du Werte übergibst. So kannst du
die Teilprobleme dann einzeln angehen und vor allem testen.
Gruß,
Thomas