lado je napisal/-a:Mene bolj zanima kakšen protokol je to in koliko je to sploh uporabno, razen kot nostalgija...
Je uporabno če te zanima prenos meritev v PC v realnem času in obdelava meritev v PC-ju.
GPIB oz. IEEE 488 je še vedno dobro podprt. Ni zelo poceni, ni pa tudi nenormalno drago.
Kitajska kopija Agilent 82357B USB adapterja je nekje od 80$ naprej.
Kitajski kabli so nekje od 15$ naprej. Če imaš USB adapter, potem za priklop samo ene naprave na rabiš dodatnega kabla.
Drago v primerjavi z USB. Sprejemljivo če imaš več naprav in imaš nek scenarij uporabe.
Npr. zapisovanje meritev v realnem času čez daljše časovno obdobje.
Ali pa avtomatizacija meritev. Iz PC-ja krmiliš napajalnik in hkrati iz multimetra pobiraš meritve.
Zelo poenostavljena zgodovina gre nekako takole:
HP-IB Hewlett-Packard Instrumentation Bus. Hitro se je razširil. HP se je tudi odpovedal pravicam in GPIB se je začel na veliko uporabljat.
IEEE 488-1 Prvi standard. Definiral je mehanske, električne in osnovne parametre protokola. Nič pa ni definiral formata podatkov in ukazov.
IEEE 488-2 Drugi standard. Definira osnovne ukaze na ravni protokola. Uvede protokol za napake. Format ukazov in podatkov je še vedno prepuščen proizvajalcem.
SCPI Standard Commands for Programmable Instruments. Definira standarden nabor ukazov in podatkov. Ni vezan samo na GPIB. Vsi profesionalni moderni instrumenti govorijo SCPI.
Keithley 177 je po standardu IEEE 488-2.
Programe v PC-ju se običajno programira s pomočjo knjižnice VISA (Virtual Instrument Software Architecture).
VISA kot fizični protokol podpira USB, LAN, GPIB (IEEE 488), COM-port.
Programira se v C-ju. Na Windowsih lahko tudi v .Net.
Oziroma v vseh programskih jezikih, ki znajo klicati C knjižnice.
Kot programski jezik je meni (vedno bolj) všeč Python.
Primer programčka, ki se priključi na Keithley 197 na naslovu 4 in izpisuje meritev na zaslon:
- Koda: Izberi vse
import pyvisa
rm = pyvisa.ResourceManager()
inst = rm.open_resource('GPIB0::4::INSTR')
while True:
print(inst.read())
Rezultat (meritev se vrti okrog 0.45V DC)
- Koda: Izberi vse
NDCV+0.44902E+0
NDCV+0.44825E+0
NDCV+0.44741E+0
NDCV+0.44905E+0