Benutzer-Werkzeuge

Webseiten-Werkzeuge


elektronik:lcr_meter_applent_at826

Erste Erfahrungen mit dem LCR Meter Applent AT826

2016/05/15

Nach längeres Suche nach einen LCR Meter habe ich mich zu Schluss zum Wagnis entschieden ein Gerät aus CN von einer eher unbekannten Firma, Applent Instruments Inc., zu erwerben.

Den LCR Meter fand ich von den Werten (soweit ich das als quasi Laie) bewerten kann, sehr interessant und konnte es dann auch über Pass in England erwerben.

Ohne Einfuhrumsatzsteuer inkl. Versandt hat mir das Applent AT826 dann am Ende 241,44 GB Pfund gekostet, kein echtes Schnäppchen, eher der Standardpreis auf vergleichbare Geräte am Markt.

Werte:

AT826
Main ParametersL, C, R, Z
Sub ParametersD, Q, θr, θd, X, ESR
Accuracy0.2%
Frequency100Hz, 120Hz, 1kHz, 10kHz and 100kHzFrequency: Accuracy: 0.02%
Measurement RangerL: 0.001µH ~ 999.9H
C: 0.001pF ~ 999.9mF
R,Z: 0.0001Ω ~ 99.99MΩ
D: 0.0001 - 9.999
Q: 0.0001 - 999.9
Δ%: -9999% - 9999%
θ(deg): 179.99° - 179.99°
θrad - 3.1416 - 3.1416
Speed4 times/second, 1.5 times/second
Source Resistance100Ω
Test Signal Level0.6Vrms Accuracy: ±10%±2 mV
Output Impedance100Ω, Accuracy: 5%

Bedienungsanleitung und Details ⇒ applent_at824_at825_and_at826_user_manual.pdf

Hersteller Webseite ⇒ http://www.anbai.cn/products/detail.aspx?familyid=lcr&model=AT826

Lieferumfang

Folgendes wird mitgeliefert:  LCR Meter Applent AT826

Zwei Four-Terminal Kelvin Test Clip, einer für SMD und ein Clip für bedrahtete Bauteile.

Erste Testes

Erste Problemchen:

Das Steckernetzteil hat ist für CN Steckdosen vorgesehen, der beigelegte Adapter für UK Stecksdosen, so das ein kleiner Stapel an Adaptern notwendig wird.

Auch habe ich mich am Anfang gewundert warum das Gerät nur angeschlossen an die Spannungsversorgung funktioniert, der Aku ist zu Beginn nicht angesteckt!

Schraube vom Akkufach hinten lösen und Akku mit den kleinen Stecker oben rechts anstecken! Nun leuchtet auch im ausgeschalteten Zustand und mit angeschlossener Spannungsversorgung der Einschaltknopf orange und zeigt den Ladevorgang des Akku an.

Strom Adapter angesteckt und eingeschaltet, Bild von der ersten Messung:

 Applent AT826

Das Bedienkonzept ist durchdacht und gut verständlich, das Display ist als Touch Display ausgelegt, das Gerät kann aber auch vollständig über die Tasten bedient werden.

Über das System Menü kann für den jeweils angeschlossen Adapter zuerst eine Calibrierung durchgeführt werden, zuerst mit offenen Klemmen dann mit geschlossenen Klemmen. Wird kein Adapter verwendet, liegt ein „Kurzschluss Blech“ bei.


PC Software

Die Website unter http://www.anbai.cn/products/detail.aspx?familyid=lcr&model=AT826 benötigt etwas Geduld.

Download der Software ist mir dann leider noch nicht gelungen.

Gleich mal den Support der Firma getestet, ob mir über die Website hier weiter geholfen werden kann.

Von dort habe ich dann auch relativ kurzfristig das Download Paket erhalten.

Zip Paket auspacken und mit Setup.exe im Ordner „Debug“ die Installation starten

  • Ziel Verzeichnis wie D:\tools\AT82X\ auswählen
  • Installation startet und ist dann auch ohne weiter Eingaben bald fertig.
  • Danach auf der Datei „db_at826.mdb“ über Security - Full Control auf der User Gruppe vergeben

Zum Glück ist das passende USB Kabel beigelegt, ist der etwas höhere Mini USB Anschluss notwendig.

USB anstecken, Geräte einschalten und Software starten.

Leider erhalten ich jetzt diesen Fehler „System.Runtime.InteropServices.COMException (0x8000FFFF) iPlotLibrary.IiPlotX.get_Channel “: Applent Programm Fehler

Die Software ist von 2014, mein Rechner aber schon auf Windows 10 64bit - hier könnte etwas daneben geht. Die Software wirkt auch etwas „frickelig“, Halb Englisch, halb Chinesisch, evlt. klappt da auch etwas nicht so recht auf einen Englischen Windows 2010 Rechner ….

Und Daten werden zwar empfangen, aber leider in der falschen Auflösung angezeigt, mH statt uH ….

Im nächsten Test werde ich das mal unter einen Windows 7 32 bit Rechner versuchen.



Ein HDI Device mit Python abfragen

Da noch keine Software vom Hersteller verfügbar ist, das ganze eben selber bauen.

Im Handbuch ist das USB Interface so einigermaßen erklärt, ein erster Test wird zeigen ob das wirklich so einfach dann klappt.

Versuchen wir es mal mit Python, das Gerät hat eine USB-HID Schnittstelle, um das auslesen gibt es auch eine Python Library für Windows https://pypi.python.org/pypi/pywinusb/, Doku dazu unter https://github.com/rene-aguirre/pywinusb

Installieren unter Python 3.4 (Windows Powershell!):

 .\python -m pip install pywinusb

Abfragen ob das Gerät erkannt werden kann:

readAT826.py
import pywinusb.hid as hid
import sys
 
# ---------------------------------------------------------
# Print the data
def readRX_handler(data):
    print("+" * 80)
    print('-- Info ::  Receive Data::' + str(data))
    print("-- Info ::  Raw data: {0}".format(data))
    print("+" * 80)
 
# ---------------------------------------------------------
# Get the data from the LCR MEter
def getAT826(at826_vendor_id):
 
    # Find the AT826 devices of the vendor id
    all_devices = hid.HidDeviceFilter(vendor_id=at826_vendor_id).get_devices()
 
    if not all_devices:
        print("-- Error :: No device with the vendor id connected {0}").format(at826_vendor_id)
    else:
 
        # search for the AT826
        # Open
        for at826device in all_devices:
            # try:
            try:
                at826device.open()
 
                print("-- Info :: Open Device :: {0.vendor_name} {0.product_name}".format(at826device))
 
                #target_usage = hid.get_full_usage_id(0x0825, 0x0826)
                #print('-- Info :: Target Usage Value :: ' + repr(target_usage))
                # generic vendor page, usage_id = 2
                target_usage = hid.get_full_usage_id(0x0825, 0x0001 )
                print('-- Info :: Target Usage Value :: ' + repr(target_usage))
 
                print("-" * 80)
 
                # browse feature reports
                # Not implemented with AT826
                print('-- try to get Feature Report')
                for freport in at826device.find_feature_reports():
                    print('-- get Feature Report :: ' + freport.get())
                    print('-- get Feature Report Raw:: ' + str(freport.get_raw_data()[:]))
                    if target_usage in freport:
                        # we found our usage
                        freport.get()
                        # print result
                        print("The value:", list(freport[target_usage]))
                        print("All the report: {0}".format(freport.get_raw_data()))
 
                print("-" * 80)
 
                # browse output reports
                for out_report in at826device.find_output_reports():
                    if target_usage in out_report:
                        print("-- Info :: Target Usage detected")
                    else:
                        print("-- Info :: No Target Usage detected")
 
                    # print(len(out_report))
                    # print(repr(out_report))
 
                    out_buffer = out_report.get_raw_data()[:]
 
                    # print(len(out_buffer))
                    # print(out_buffer)
                    # May be  must be 1 ?? to trigger the send process of the api???
 
                    out_buffer[0] = 0x00
                    out_buffer[1] = 0x00
                    out_buffer[2] = 0x00
                    out_buffer[3] = 0x40
 
                    #get the Device information
 
                    out_buffer[4] = ord('I')
                    out_buffer[5] = ord('D')
                    out_buffer[6] = ord('N')
                    out_buffer[7] = ord('?')
 
                    # nSignauture
                    out_buffer[56] = 0x88
                    out_buffer[57] = 0x80
                    out_buffer[58] = 0x55
                    out_buffer[59] = 0x50
 
                    # nChecksum
                    out_buffer[60] = 0x00
                    out_buffer[61] = 0x00
                    out_buffer[62] = 0x2B
                    out_buffer[63] = 0xC1
 
                    # print(len(out_buffer))
                    # print(out_buffer)
 
                    for i in range(64):
                        print("-- Read buffer {0:02d} => {1}".format(i, hex(out_buffer[i])))
 
                    # Attach a custom handler when a data is received
                    at826device.set_raw_data_handler(readRX_handler)
 
                    print("-- Info :: send  Buffer Data")
 
                    out_report.set_raw_data(out_buffer)
                    out_report.send()
 
                    # at826device.send_output_report(out_buffer)
 
                    out_buffer = out_report.get_raw_data()[:]
                    print(out_buffer)
 
                    if target_usage in out_report:
                        print("-- Info ::target_usage detected")
 
                print("-" * 80)
 
                at826device.close()
            except:
                print('close')
                at826device.close()
 
# ---------------------------------------------------------
# list all devices on the maschine for the HID USB Interface
def showAllHDIDef():
    all_devices = hid.find_all_hid_devices()
    print("-- Show all attached devices --")
    for device in all_devices:
        print("-- Info :: fond :: " + str(device))
    print("-" * 80)
 
 
if __name__ == '__main__':
 
   # Debug, get all informations about all devices
   # if sys.version_info < (3,):
   #     import codecs
   #
   #     ou#tput = codecs.getwriter('mbcs')(sys.stdout)
   # else:
   #     # python3, you have to deal with encodings, try redirecting to any file
   #     output = sys.stdout
   # try:
   #     hid.core.show_hids(output=output)
   # except UnicodeEncodeError:
   #     print("\nError: Can't manage encodings on terminal, try to run the script on PyScripter or IDLE")
   #
 
   # Vendor ID of the device
    at826_vendor_id = 0x0825
 
    # Read all devices
    showAllHDIDef()
 
 
    # Get the LCR
    getAT826(at826_vendor_id)

Der LCR Meter wird erkannt.

Packet zum Senden wie im Handbuch beschrieben aufgebaut und zum Gerät gesandt.

Im nächsten Schritt müssen jetzt nur noch Daten wieder empfangen werden .-( ⇒ leider ist mir das mit diese API noch nicht gelungen, evlt. ist das gesendet Paket nicht korrekt.

demnächst mehr …

Um zu testen ob es einfach funktioniert mit diesem Beispiel arbeiten: https://github.com/rene-aguirre/pywinusb/blob/master/examples/raw_data.py

Mit meinen Multimeter BXM240 ( bzw. DMM 86D von http://www.victor-multimeter.com - Software dazu unter http://www.batronix.com/shop/downloads/ ) kann ich über Python mit dem Test Skript Daten empfangen, der LCR Meter antwortet leider immer noch nicht auf die Anfragen …


Stoffsammlung zu HID

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
"Autor: Gunther Pipperr"
elektronik/lcr_meter_applent_at826.txt · Zuletzt geändert: 2018/10/23 20:06 von Gunther Pippèrr