Я ищу программу, которая может считывать вес по USB-шкале, а именно портативную шкалу USB Pelouze 10lb. Я думал, что у него будет виртуальный драйвер COM-порта, но вместо этого он использует HID-драйверы. Я искал целый месяц для программы, которая может помочь мне перенести чтение шкалы в Microsoft Excel. Может кто-нибудь помочь мне или указать мне в правильном направлении? Я абсолютно неграмотен для программирования. Огромную благодарность за любую помощь.Программа для HID USB Scale
ответ
Я бы предположил, что выход USB-устройства HID, подобного этому, должен появиться на USB-хосте точно так же, как если бы вход был введен на клавиатуре, то есть на стабилизированном шкале, вес передавался через USB. Именно так работают большинство USB-сканеров штрих-кодов.
Если это так, то весы должны просто стрелять по весу и появляться в любом приложении; Excel, если это то, в чем вы хотели, чтобы вход закончился.
Тем не менее, я просмотрел спецификации и руководство по указанному вами масштабу, и, если я не рассматриваю неправильную модель, хотя она питается от USB, я не вижу упоминания о том, что это также обменивается данными через USB. У вас есть URL или номер детали?
Это, конечно, не так. Мышь также является HID-устройством, и это, конечно, не клавиатура. – MSalters
Очень верно. Я привык иметь дело со сканерами и т. Д., И предположил, что масштаб будет соответствовать профилю клавиатуры, так как это не имеет большого смысла для того, чтобы он постоянно издавал флуктуирующее чтение. – Lunatik
Колебания не являются проблемой; проблема в том, что шкала должна давать свое чтение, когда ПК хочет этого. Клавиатура и сканер штрих-кода вызывают события на ПК по мере их возникновения. – MSalters
Первый вопрос, на который вам нужно ответить, - это точное использование HID. USB описывает большое количество связанных протоколов. USB HID - это подмножество, но это все еще охватывает большой массив устройств. Спецификации HID определяют 32-битный «идентификатор использования», поддерживающий до 4 миллиардов различных типов HID-устройств, хотя до сих пор была назначена только часть этих значений.
Windows API, который вам, вероятно, понадобится, - Raw Input. К сожалению, это не интерфейс для программирования безграмотных.
Я могу предложить полезные ссылки.
Весы используют опцию USB HID точки продажи, ссылку на которую можно найти в разделе комментариев в блоге, о котором я упоминаю ниже. Я бы связался напрямую, но механизм предотвращения спама предохраняет меня.
Там в блоге на рассмотрении версии 25lb шкалы от C#, здесь: http://nicholas.piasecki.name/blog/2008/11/reading-a-stamps-com-usb-scale-from-c-sharp/
Комментарии на этот пост полезны - вот где вы найдете USB spec, есть также комментарий, показывающий, как добраться данные без использования полной библиотеки HID.
Удачи вам в вашем проекте!
Эта запись в блоге очень полезна и хорошо написана. К сожалению, ссылка в блоге мертва. Тем не менее блог все еще стоит. –
Похоже, что код HID USB, используемый в блоге, переместился на: https://github.com/mikeobrien/HidLibrary –
Ссылка не работает. Любой шанс, что у вас есть содержание этого сообщения, вокруг которого вы могли бы поделиться здесь? – DaveH
Для устройств USB, которые не поддерживаются напрямую O/S, вам либо нужно быть программистом, либо вам нужна программа, поставляемая поставщиком устройства. В этом случае, поскольку вам кажется, что вы не программист, обратитесь к производителю, чтобы узнать, могут ли они предоставить какие-либо диагностические или тестовые программы, которые могут использоваться для чтения и сбора данных масштаба. Если вам повезет, такая программа может быть «упакована», а выход перенаправлен или что-то в этом роде. Удачи.
Elane продает линейку весов USB HID, а также программу Windows для считывания веса. К сожалению, из-за Stamps.com эта программа больше не является бесплатной. В 15,50 доллара это не обязательно то, что я хочу попробовать вслепую, но вот он: http://www.elane.net/index.php?go=USB_pcsoftware
Я написал код для чтения с USB-накопителя Dymo с использованием Python. Это требует libusb и PyUSB.
Этот код довольно общий; он должен работать с любым HID устройством, которое имеет только одну конфигурацию:
import usb.core
import usb.util
VENDOR_ID = 0x0922
PRODUCT_ID = 0x8003
# find the USB device
device = usb.core.find(idVendor=VENDOR_ID,
idProduct=PRODUCT_ID)
# use the first/default configuration
device.set_configuration()
# first endpoint
endpoint = device[0][(0,0)][0]
# read a data packet
attempts = 10
data = None
while data is None and attempts > 0:
try:
data = device.read(endpoint.bEndpointAddress,
endpoint.wMaxPacketSize)
except usb.core.USBError as e:
data = None
if e.args == ('Operation timed out',):
attempts -= 1
continue
print data
Для шкалы DYMO М10 я использую, пакет данных представляет собой 6-элемент массива, как этот array('B', [3, 2, 11, 255, 0, 0])
.
Последние два элемента используются для расчета веса.
В кг режиме grams = data[4] + (256 * data[5])
и в фунтах/унциях режиме ounces = 0.1 * (data[4] + (256 * data[5]))
.
Дополнительная информация о my blog post.
если вы хотите играть в сыщик совет этого парня может помочь:
http://nicholas.piasecki.name/blog/2008/11/reading-a-stamps-com-usb-scale-from-c-sharp/
Просто заказал масштаб DYMO себя так опубликует результаты
http://r.lagserv.net/scalereader.htm
Это отличный код, чтобы получить началось с C# и шкалы Dymo с использованием HidLibrary.
Просто измените идентификатор поставщика, чтобы он соответствовал вашему весу.
Вы можете запустить и запустить процесс регистрации через несколько минут.
Я использовал его с Dymo S400.
Я написал мою версию nodejs и поделился кодом на https://github.com/PhantomRay/dymo-scale-nodejs.
Он протестирован только в Windows 10. Кроме того, он имеет простой серверный режим веб-сокета, построенный для него, чтобы любая веб-страница могла подключаться к нему для чтения данных.
Я проверил масштаб в Ubuntu и Mac. Он по умолчанию не распознается как HID-устройство. Таким образом, код не работает в этой ОС. Не уверен, есть ли способ заставить его как устройство HID. Возможно, некоторые водители. – yautja
- 1. Программа для HID USB Scale для передачи веса в MS Excel
- 2. .NET API для HID (USB)?
- 3. Ускоренный вывод USB HID
- 4. Обнаружение устройства USB HID
- 5. Logitech USB HID-контроллер
- 6. iOS USB HID программирование
- 7. USB HID Keyboard emulator
- 8. Переименовать HID - USB GamePad
- 9. драйвер для Windows HID для клавиатуры USB
- 10. Запись на USB-устройство HID
- 11. USB HID Перечень с BLED112
- 12. Понимание «без водителя» USB HID
- 13. HID USB-доступ vs libusb
- 14. Требования к USB HID-ручке
- 15. MATLAB USB HID data receive
- 16. Вопрос о USB HID-протоколе
- 17. Javascript для доступа к usb HID (игровой контроллер usb)
- 18. Подробное описание устройства HID (USB)
- 19. Чтение отчета функции USB HID
- 20. Datalogic USB режим ОЕМ HID
- 21. USB USPS Postage Scale API
- 22. C# Serialport или USB HID-соединение?
- 23. Как читать данные с устройства USB HID?
- 24. Android: usb hid driver in C
- 25. python: Чтение с USB-устройства HID
- 26. Невозможно записать на USB-устройство HID
- 27. Переименовать USB-HID-устройство под Windows
- 28. C# чтения USB HID от сканера штрихкода
- 29. Портирование окон USB HID-код на libusb
- 30. Usb hid device insert/removal detection winapi
Вы уверены, что устройство поддерживает связь через USB, а не только питание? – Lunatik
Вот ссылка на страницу продукта в масштабе http://global.dymo.com/enUS/Products/10_lb__USB_Mailing_Scale.html Я уверен, что он обменивается данными по USB, потому что он поставляется с программным обеспечением для Stamps.com. Я попробовал, и он показывает вес на ПК, но я не могу экспортировать вес в Excel. Кроме того, я использовал SimpleHIDWrite.exe и обнаружил, что он распознает масштаб и показывает вес в том, что выглядит как шестнадцатеричные числа. – Alex