上文我们说道,要实现整个AI识别过程,我们需要电子秤+AI服务,本文将以顶尖OS2电子秤+某AI服务为例完成整个过程
通常电子秤是以串口形式进行通信,这里需要注意的是,某些设备可能是有信号才进行数据通信,有些则可能是持续输出的,具体取决于对接电子秤品牌
顶尖OS2电子秤,是提供dll脚本(可以理解为npm包),该脚本会暴露几个api(比如:init,__Open,__GetWeight等),那么对于前端而言,重要的则是如何使用这个dll文件,紧接着使用其提供的方法
dll文件通常是C语言写的,对于js而言是无法识别的,那么就需要nodejs来完成,nodejs无非就是用一些第三方包,笔者这里采用的是ffi-napi库,对于一个第三方库而言,姿势无非就是初始化、调用、销毁等几步,这里也一样
function createDll () {
const ffi = require('ffi-napi')
const path = require('path')
let instance = null
let dllPath = ''
try {
dllPath = path.join(__dirname, 'xxx/xxx.dll')
instance = ffi.Library(dllPath, {
'__GetWeight': ['string'