=====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, [[http://www.applent.com/|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 [[http://www.tester.co.uk/|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 Parameters|L, C, R, Z| |Sub Parameters|D, Q, θr, θd, X, ESR| |Accuracy|0.2%| |Frequency|100Hz, 120Hz, 1kHz, 10kHz and 100kHz|Frequency: Accuracy: 0.02%| |Measurement Ranger|L: |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| |Speed|4 times/second, 1.5 times/second| |Source Resistance|100Ω | |Test Signal Level|0.6Vrms Accuracy: ±10%±2 mV| |Output Impedance|100Ω, Accuracy: 5%| Bedienungsanleitung und Details => {{:elektronik: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: {{ :elektronik:applent_at826_v01.png?direct | 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: {{ :elektronik:applent_at826_v02.png?249 | 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 ": {{:elektronik:applent_error_start_software_v01.png|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 [[https://en.wikipedia.org/wiki/USB_human_interface_device_class|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: 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. [[http://www.victor-multimeter.com/products/digital-multimeter/victor-86d-3-5-6-large-lcd-digital-multimeter-650.html|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 === http://www.usb.org Websites zu dem Thema * https://developer.mbed.org/cookbook/USBHID-bindings- * https://docs.mbed.com/docs/ble-hid/en/latest/api/md_doc_HID.html * http://eleccelerator.com/tutorial-about-usb-hid-report-descriptors/ * http://www.usbmadesimple.co.uk/ums_5.htm * http://www.atmel.com/images/doc7599.pdf * https://www.circuitsathome.com/communicating-arduino-with-hid-devices-part-1 Übersicht * http://janaxelson.com/hidpage.htm Tools Ein Test kann auch mit http://www.usb.org/developers/tools/ USB3CV_x64.msi durchgeführt werden. * http://docklight.de/dl_faq040/?gclid=CPfdlbXitsoCFYvpwgodKooJRg * http://www.usblyzer.com Weitere Libraries: * http://www.signal11.us/oss/hidapi/ USB Lib Python Lib für Windows: * http://sourceforge.net/projects/libusb-win32/?source=typ_redirect Neu: https://pypi.org/project/libusb/ http://libusb.sourceforge.net/api-1.0/annotated.html ---- http://www.how-to-diy.org/gUfoVFiXcFZHzJ/Applent-AT825-LCR-meter-review-&-teardown.html ----