海康明眸测温及身份证SDK接口C#编程小结

海康明眸测温及身份证SDK接口C#编程小结

因为疫情一些医院使用海康明眸测温设备测体温并且登记身份证,因此开发了一个登记程序,接收设备的体温和身份证信息。
设备型号:DS-KAB671-I,图片如下:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
首先从海康官网下载SDK,但是里面没有体温和身份证接口信息,发邮件很快得到回复,在文末有下载。海康的很多设备应该都是用这一套SDK。
解压后能找到C#示例程序,根据自己的项目是32位还是64位选择对应的dll文件复制到程序所在文件夹。
下图是SDK里的示例程序,有完整的源代码。测试设备接口的时候可以直接用这个软件连接设备接收数据,能看到是哪种类型的数据,用于后面选择对应的功能模块。输入IP、端口、用户名、密码点添加,然后点全部布防。
在这里插入图片描述
示例代码里有两个文件:CHCNet.cs和CHCNetSDK.cs复制到自己的项目里使用。CHCNetSDK.cs里定义了各种监控视频、车牌识别、门禁等接口的定义,可以直接用。CHCNet.cs里有全部功能的使用示例,我根据需要对其中一部分进行了改写,方便获取数据。
连接设备流程:第一步使用IP、端口、账号、密码连接设备,第二步执行布防。然后用HikNet_GetMessage事件获取信息。
调用方法:

CHCNet  hikNet = new CHCNet();
hikNet.GetError += HikNet_GetError;//获取出错信息
hikNet.GetMessage += HikNet_GetMessage;//获取体温、身份证信息
hikNet.Init();//初始化
hikNet.AddDevice("IP", "Port", "ID", "PW");//连接设备
hikNet.SetAlarm();//布防

从事件获取体温、身份证信息:

        public void HikNet_GetMessage(object sender, HikEventArgs e)
        {
            if (e.HikMessage == null || 
(Cvt.IsNull(e.HikMessage.IDCard) && Cvt.ToDouble(e.HikMessage.Temperature) == 0))
            {//跳过与体温无关的消息
                return;
            }

            if (Cvt.IsNull(e.HikMessage.IDCard) && Cvt.ToDouble(e.HikMessage.Temperature) > 0)
            {//只有体温,无身份证信息
                txtRegDate.Text = e.HikMessage.DateTime;
                pic0.Image = e.HikMessage.Image;//抓拍图像
                pic1.Image = e.HikMessage.ImageThermal;//热成像图像
                txtTemperature.Text = e.HikMessage.Temperature;//体温
            }
            else
            {
                txtName.Text = e.HikMessage.Name;
                txtTemperature.Text = e.HikMessage.Temperature;
                txtRegDate.Text = e.HikMessage.DateTime;
                txtIDCard.Text = e.HikMessage.IDCard;
                if (txtIDCard.Text.Length > 16)
                    txtBirthDay.Text = txtIDCard.Text.Substring(6, 4) + "-" + txtIDCard.Text.Substring(10, 2) + "-" + txtIDCard.Text.Substring(12, 2);
                txtIDCardAddress.Text = e.HikMessage.Address;
                cmbSex.Text = e.HikMessage.Sex;
                pic0.Image = e.HikMessage.Image;
                pic1.Image = e.HikMessage.ImageThermal;
                pic2.Image = e.HikMessage.ImageIDCard;
            }
        }

获取错误信息:

        private void HikNet_GetError(object sender, HikEventArgs e)
        {
            txtLog.Text = e.Message + "[" + e.IP + "]" + DateTime.Now + "\r\n" + txtLog.Text;
        }

程序退出时关闭接口:

        private void fMain_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (hikNet != null)
            {
                if (hikNet.IsListen)
                    hikNet.StopListen();//停止监听,这里用不上
                hikNet.CloseAlarm();//关闭布防
                hikNet.Close();//关闭连接
            }
        }

CHCNet.cs简单说明:接收信息时在AlarmMessageHandle方法中根据信息类型选择对应的方法,比如ProcessCommAlarm_AcsAlarm、ProcessCommAlarm_ThermAlarm和ProcessCommAlarm_ISAPIAlarm(体温),ProcessCommAlarm_IDInfoAlarm(身份证加体温),这几个方法对应不同的消息类型。其他详细内容可以下载源代码自行研究。
注意:
1.SDK的32位或者64位是跟自己的项目对应,否则出错;
2.一个设备只能有一个软件布防,否则会提示连接失败;
3.需要用示例程序接收数据来判断是哪种类型,然后改写对应的方法;
4.程序布防成功后会接收设备内未传送的所有记录,而且大约1秒/条,如果记录太多可以在设备里清除;
5.先刷身份证再测体温才能让两组数据在一条信息里。

源代码及SDK开发包下载:
改写的海康接口源代码
海康设备SDK及文档(含体温及身份证)
海康示例程序及代码

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
设备网络SDK是基于设备私有网络通信协议开发的,为嵌入式网络硬盘录像机、NVR、网络摄像机、网络球机、视频服务器、解码器、报警主机、网络存储等产品服务的配套模块,用于远程访问和控制设备软件的二次开发。 设备网络SDK主要功能 图像预览, 文件回放和下载, 云台控制, 布防/撤防, 语音对讲, 日志管理, 解码卡, 远程升级, 远程重启/关闭, 格式化硬盘, 参数配置(系统配置, 通道配置, 串口配置, 报警配置, 用户配置), 多路解码器, 智能设备功能和获取设备能力集等。 适用于但不仅限于以下产品型号: 1. 编解码设备 DVR:DS-9100、DS-8100、DS-8000-S、DS-8800、DS-7800、DS-7300、DS-7200、DS-7100、DS-7000等系列,包括-ST、-SH、-SE、-SN、-RT、-RH、-XT等; NVR:DS-96000、DS-9600、DS-9500、DS-8600、DS-7900、DS-7800、DS-7700、DS-7600、DS-7100等系列,包括-I、-F、-K、-E、-H、-ST、-XT、-SN、-SE、-SNH、-SHT、-S、-SH、-RT等; XVR:DS-9000HQH-SH、DS-8100HQH(/HGH)-SH、DS-8000HQH-SH、DS-7300HQH(/HGH)-SH、DS-7200HQH(/HGH)-SH、DS-8800HQH(/HGH)(/HUH)-SH(/Fx)、DS-7900HQH(/HGH)(/HUH)-SH(/Fx)、DS-7800HQH(/HGH)(/HUH)-SH(/Ex/Fx)、DS-7100HGH-E1(/F1)等; HDVR(混合型DVR):DS-9000、DS-8000-ST、DS-7600H-ST/-S系列等; 编码器:DS-6700、DS-6600、DS-6500(-JX)、DS-6100、DS-6401HFH系列视频服务器、DS-6000系列编/解码器等; 解码器:DS-6300D(-JX)、DS-6400HD(-JX/-T)、DS-6500D(-T)等 2. 网络摄像机, 网络球机 网络摄像机:标清、高清、红外、热成像、鱼眼等,如DS-2CD7xx、DS-2CD71xx、DS-2CD72xx、DS-2CD8xx、DS-2CD81xx、DS-2CD82xx、DS-2CD84xx、DS-2CD83xx、DS-2CD11xx、DS-2CD12xx、DS-2CD13xx、DS-2CD20xx、DS-2CD21xx、DS-2CD22xx、DS-2CD23xx、DS-2CD24xx、DS-2CD25xx、DS-2CD26xx、DS-2CD27xx、DS-2CD28xx、DS-2CD29xx、DS-2CD2Axx、DS-2CD2Cxx、DS-2CD2Dxx、DS-2CD2Txx、DS-2CD2Qxx、DS-2CD30xx、DS-2CD31xx、DS-2CD32xx、DS-2CD33xx、DS-2CD34xx、DS-2CD39xx、DS-2CD3Txx、DS-2CD3Qxx、DS-2CD40xx、DS-2CD41xx、DS-2CD42xx、DS-2CD4Axx、DS-2CD62xx、DS-2CD63xx、DS-2CD64xx、DS-2CD65xx等 网络球机:标清、高清、红外等,如DS-2DF86xx、DS-2DF85xx、DS-2DF82xx、DS-2DF72xx、DS-2DF71xx、DS-2DE71xx、DS-2DE73xx、DS-2DE72xx、DS-2DM72xx、DS-2DM71xx、DS-2DF1-7xx、DS-2DF66xx、DS-2DF62xx、DS-2DF1-6xx、DS-2DE51xx、DS-2DE52xx、DS-2DE53xx、DS-2DM52xx、DS-2DF52xx、DS-2DC52xx、DS-2DC51xx、DS-2DF1-5xx、DS-2DE45xx、DS-2DE42xx、DS-2DE41xx、DS-2DF1-4xx、DS-2DM1-7xx、DS-2DM1-6xx、DS-2DM1-5xx等 一体化网络摄像机:DS-2ZCN3007、DS-2ZCN3006、DS-2DZ216MF、DS-2DZ2116、DS-2ZCN2006、DS-2ZCN2007、DS-2ZMN2007、DS-2ZMN2006等 智能交通摄像机(抓拍机):(i)DS-2CD93xx、(i)DS-2CD92xx、(i)DS-2CD91xx、DS-2CD9xx、DS-TCG225、DS-TCG113等系列

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值