как осуществить обмен данными по последовательному каналу связи (виртуальный COM порт) с весами, нахожу только как писать драйвера для USB устройств с большим объемом USB тории.USB тут вообще побоку. Для начала можете взять эмулятор терминала, умеющий работать с COM-портом (для винды годится Hyperterminal или PuTTY), подключиться к порту с правильными параметрами и руками набирать команды по протоколу, глазами смотреть ответы. Как только на этом этапе наступит просветление, можно гуглить, как на C++ работать с COM-портом (на базовом уровне ничего сложного, примеров в сети должно быть навалом). А ещё можно попробовать промежуточной прослойкой вставить такую штуку https://www.google.com/search?q=insat+modbus+opc+server но это довольно костыльный вариант, просто почему-то он имеет популярность ¯\_(ツ)_/¯