Naarmate de laboratoriumruimte steeds minder wordt en de ontwikkelingsteams steeds meer verspreid raken, kiezen bedrijven voor alles-in-één-instrumenten als aanvulling op de traditionele laboratoria. Hierdoor ontstaat de behoefte aan mobiele test- en meetstations die elk type ontwikkeling kunnen ondersteunen. USB-test- en meetapparatuur kan worden gebruikt in verschillende toepassingen, waaronder het testen van embedded systemen en het onderhoud van elektronische apparatuur. Bovendien kunnen de vastgelegde gegevens snel worden gedownload naar een computer en gemakkelijk worden gedeeld met anderen. Gebruikers kunnen ook rechtstreeks gegevens naar de cloud sturen en geautomatiseerde testlaboratoria bouwen.
Digilent Inc, een National Instruments Company, heeft een unieke expertise in FPGA-systemen, testinstrumenten en software. Digilent’s boards zijn kant-en-klare ontwikkelplatforms met een breed scala aan functionaliteiten. Ingenieurs over de hele wereld gebruiken Digilent USB-test- en meetapparatuur om de ontwerpcycli te verkorten en de efficiëntie te verhogen door een oscilloscoop, logic analyzer, signaalgenerator en meer binnen handbereik te houden. Alle Digilent oplossingen worden geleverd met een krachtige en uitgebreide bibliotheek van documentatie, referentiehandleidingen, tutorials en andere informatieve content die gratis beschikbaar is voor iedereen die het nodig heeft.
De Digilent Digital Discovery is een gecombineerde logic analyzer en patroongenerator waarmee u signalen in digitale systemen kunt debuggen, visualiseren en simuleren.De gratis WaveForms software kan worden geconfigureerd om te werken zoals elk van de volgende instrumenten: logische analyzer, patroongenerator, digitaal in-/uitvoerapparaat, digitale bus-analyzer, programmeerbare voeding. Het is compatibel met Windows, Mac, Linux en Raspberry Pi.
National Instruments LabVIEW biedt een grafische programmeeraanpak die u helpt om elk aspect van uw applicatie te visualiseren. Dit omvat hardwareconfiguratie, meetgegevens en debugging. Dit zijn de voordelen van het gebruik van LabVIEW:
- Programma – ondersteund door intuïtieve grafische programmering – de manier waarop u denkt.
- Maak verbinding met bijna alle hardware met ongeëvenaarde hardware ondersteuning.
- Verzamel en visualiseer gegevens snel.
- Werk samen met andere softwaretools.
De volgende handleiding laat zien hoe het Digilent WaveForms VIs LabVIEW-pakket kan worden gebruikt om digitale schakelingen te testen en te meten.

Eisen:
- Een Digital Discovery USB logic analyzer en patroongenerator.
- Een computer met de laatste versie van WaveForms en LabVIEW Community.
Opmerking: WaveForms kan worden gedownload van de WaveForms website. Het installatieproces wordt beschreven in de WaveForms Getting Started Guide. Tijdens de installatie van WaveForms wordt ook de Digilent WaveForms Runtime geïnstalleerd, die nodig is voor de WaveForms VI’s.
Opmerking: Een NI-account is vereist om LabVIEW te downloaden. LabVIEW Community kan worden gedownload van de LabVIEW Community website. Een snelstartgids is hier beschikbaar: LabVIEW Community Getting Started. Wanneer u de LabVIEW Community installeert, worden de VI Package Manager en de VIPM-browser geïnstalleerd. Beide worden later in deze tutorial gebruikt.
Hardware installatie:
Sluit Digital Discovery aan op de computer met een USB-kabel.
Software-instelling:
Open de VIPM-browser (VI Package Manager).

Zoek naar “Digilent”, open “Digilent WaveForms VI’s” en klik op “Installeren”.

Nadat de installatie is voltooid, sluit u het venster en start u de VI Package Manager. Als het eenmaal is geopend, zoek en dubbelklik dan op Digilent WaveForms VI’s.

Klik op “Examples”.

Het volgende voorbeeld toont de functies van het digitale I/O-apparaat en het gebruik van de digitale I/O-pennen.
Voorbeeld van digitale e-input/output – eenvoudige loopback
Download het meegeleverde voorbeeldbestand digital_io_2.zip en pak het uit. Dubbelklik erop om het te openen met LabVIEW Community. Alle in het voorbeeld gebruikte instrumenten kunnen worden gebruikt in uw eigen VI. Speel wat rond en kijk wat je nog meer kunt ontwikkelen.
Om toegang te krijgen tot de Digital Discovery digitale I/O pinnen binnen LabVIEW, zijn de volgende SubVI’s beschikbaar in de Meet-I/O –> Digilent WF Vis –> Dig container
- Initialize: Hiermee kan de gebruiker het Digilent test- en meetapparaat selecteren en de apparaathandler naar de andere digitale I/O-SubVI’s sturen.
- Read: Wordt gebruikt om de status van een specifieke set digitale I/O-lijnen te bekijken.
- Write: Wordt gebruikt om de toestand van een specifieke set digitale I/O-lijnen in te stellen.
- Close: Sluit het instrument af wanneer het programma eindigt en stelt het beschikbaar voor een andere software (geen enkel instrument kan door twee programma’s tegelijk worden bestuurd).
- Er zijn ook andere SubVI’s beschikbaar voor het toevoegen van tristaatbuffers aan de in-/uitgangslijnen, het resetten van het instrument of het ophalen van de lijntoestanden (hoge impedantie / statisch). Deze worden in het voorbeeld niet gebruikt.

Een LabVIEW virtueel instrument bestaat uit twee delen: het frontpaneel en het blokschema.
Het frontpaneel bevat alle bedieningselementen en displays voor de invoer en uitvoer van gegevens en dient als gebruikersinterface terwijl het programma draait.
Het blokschema bevat de blokken die op het frontpaneel aanwezig zijn, maar ook andere blokken die nodig zijn voor de verwerking van de informatie en de verbinding tussen deze blokken. Een nieuw blok kan aan beide vensters worden toegevoegd door met de rechtermuisknop op een vrije ruimte in het betreffende venster te klikken en vervolgens het gewenste blok uit een bibliotheek te selecteren. Bestaande blokken in een venster kunnen worden gewijzigd door met de rechtermuisknop op het betreffende blok te klikken.
Hieronder worden het frontpaneel en het blokschema van dit voorbeeld weergegeven.
Het frontpaneel bevat – naast de menubalk – de instellingen voor de uitlijning, de knop “Zoeken”, enz. (Zie: LabVIEW Community Getting Started voor meer informatie), de knop Run voor het uitvoeren van het programma (1), en het paneel zelf (3). Bedienings- en weergaveobjecten worden in het paneel geplaatst.
In het voorbeeld is het paneel met behulp van ontwerpelementen in twee delen verdeeld. In het bovenste gedeelte staat een uitklaplijst met de naam “Apparaat”. Dit wordt gebruikt om de gebruikte test- en meetapparatuur te selecteren. Hier bevindt zich ook de Stopknop (2). Met deze knop kan het programma worden gestopt en worden alle digitale in-/uitgangslijnen op LOW gezet.
Het onderste deel bevat een schuifregelaar van 1 tot 9 (controle), twee tekstvelden (display), 7 virtuele LED’s en een 7-segments display. Wanneer het programma wordt uitgevoerd, bepalen de nummers van de schuifregelaar welke segmenten van het 7-segmentendisplay moeten oplichten, en de lijst van deze segmenten wordt in een van de tekstvelden weergegeven. Het andere tekstveld bevat het binaire nummer dat naar de digitale in-/uitvoerregels 0 tot 6 moet worden geschreven. Virtuele LED’s geven de status van deze lijnen aan. Het 7-segment display wordt aangesloten op de digitale in-/uitgangslijnen 8 tot en met 14, en de segmenten worden in- of uitgeschakeld afhankelijk van de status van deze pinnen.

Het blokschema bevat – naast de menubalk – de instellingen voor de uitlijning, de knop “Zoeken”, enz. (zie LabVIEW Community Getting Started voor meer informatie), de knop Run (u kunt het programma ook vanaf hier starten), en het paneel zelf. In dit paneel worden controle, weergave en gegevensverwerkingsblokken en -structuren geplaatst en aangesloten.
In dit voorbeeld is het blokschema verdeeld in drie delen met behulp van ontwerpelementen en functionele structuren. Het eerste deel genaamd “Device selection and initialization” bevat de “Device” keuzelijst, vergelijkt de uitvoer met voorgedefinieerde strings en initialiseert het digitale I/O-instrument met de geselecteerde apparaatnaam. Dit onderdeel heeft geen ingangssignalen, maar twee uitgangssignalen: de device handler van het Digitaal I/O Instrument en het foutsignaal.

De volgende sectie wordt uitgevoerd in een tijdlus, d.w.z. dat deze wordt herhaald totdat aan een bepaalde voorwaarde is voldaan, met een wachttijd van 100 ms tussen de iteraties. Deze sectie heeft als ingangssignalen de twee uitgangssignalen van de vorige sectie. Aan de hand van het op de schuifregelaar ingestelde aantal worden de twee snaren bepaald, die op het frontpaneel worden weergegeven. De binaire string wordt vervolgens omgezet in een binaire array en deze array wordt vervolgens naar de digitale in-/uitgangslijnen 0 tot 6 gestuurd en naar de zeven virtuele LED’s die de status van deze lijnen aangeven.
De volgende stap is het aflezen van de status van de digitale in-/uitgangslijnen 8 tot 14 en het aansturen van de segmenten van het 7-segments display volgens de ontvangen waarden. De lus wordt verlaten als er een fout optreedt of als er op de knop “Stop” op het frontpaneel wordt geklikt. Het handvat van het instrument en de fouten worden naar het volgende deel gestuurd.

Als de lus wordt verlaten, wordt de toestand van alle virtuele LED’s op “false” gezet met behulp van de property nodes, worden de strings vervangen door een lege string, en dan wordt een boolean array met veel nullen naar de digitale in-/uitgangslijnen geschreven (dit zet alle lijnen op LOW). Het apparaat is gesloten en dus beschikbaar voor andere programma’s. Als er fouten zijn opgetreden, wordt er een foutmelding weergegeven.

Om de VI uit te voeren, selecteert u eerst de Digital Discovery als het gebruikte apparaat op het voorpaneel en klikt u vervolgens op de knop Run.
Sluit de DIO-pinnen 0 tot en met 6 aan op de DIO-pinnen 8 tot en met 14. De DIO-lijnen 0 tot en met 6 worden gebruikt als uitgang en worden aangestuurd door de schuifregelaar. Aangezien de segmenten van het 7-segments display zijn aangesloten op de digitale in-/uitgangslijnen 8 tot en met 14, wordt het nummer dat op de schuifregelaar is ingesteld, weergegeven wanneer de betreffende pinnen zijn aangesloten. Het programma kan worden beëindigd met de stopknop op het frontpaneel.

