个人介绍
我有较为自由的工作时间和较长的工作经验,熟悉机房运维和软硬件开发,喜欢学习和钻研新技术、新领域,希望能够为你解决一些实际问题。如果能够帮得上你的忙,请随时联系,现在就点击“立即预约”或“发布需求”!
工作经历
2005-08-23 -至今地方事业单位分管负责人
负责本单位所有技术工作,负责网络安全工作。 技术集成化较高,涉及范围较广,知识点较松散复杂。
教育经历
2001-09-01 - 2005-07-01河北师范大学美术学本科
技能
该系统比较简单,主要实现的是以下几个功能: 1、自动根据室内外环境情况决定是否放保温罩、是否开闭风口; 2、测试地温情况,决定是否启用大棚内加温器。 所涉及的软硬件如下: 1、使用openwrt作为每个大棚的数据处理端,一方面USB连接流量卡上网收发数据,一方面使用串口连接两个24L单片机传输棚内数据和执行器; 2、每个棚内使用多个PVC管扎入地下,上端使用小型太阳能电板供电,使用一个PIC单片机采集位于管底部的温度传感器数据和顶部的光敏电阻数据,并通过2.4G信号脉冲式单向发送到openwrt上; 3、openwrt按照服务器端制定的规则(或动作),判断当前棚内光照和温湿度情况,根据具体需要,使用2.4G单向向风口电机和加温器传输控制指令。 开发语言主要是C、PHP和perl。
本系统是多年前开发的,主要使用语言是C#、VB(ASP).net、Java、Javascript和PHP。 其中硬件部分是购买的市场现有产品。 主要分为: 1、前端界面部分。使用AJAX技术,采取前后端分离的模式,使用ExtJS开发前端功能,用json在前后端传递加密后的文本信息。用户在第一次下载后,在本地缓存EXTJS的库文件,减少第二次打开界面的时间。 2、定位服务通信部分。共有三种模式。 第一种是使用基站定位。使用Java开发多线程程序,控制台界面,按照电信和移动方面提供的L1、Le定位接口获取用户的位置信息;这种方式无需硬件客户端上传任何信息,不浪费流量,但接口响应速度较慢,约为10-20秒。定位精度约在5-50米范围。 第二种是使用定位终端post上来的基站强度列表进行粗略定位,使用相关的场强定位算法,结合从谷歌等第三方平台获取的基站经纬度信息,计算用户当前的大概位置。基站信息一次获取后,将在服务器数据库中永久保存,提高下次计算效率。这种方式需要用户上传一些信息,需要一定的gprs流量,定位精度约在10-500米范围。 第三种是硬件直接启动自身所带的gps模块进行定位。服务器端通过IPPBX接口发送一个振铃信号(后来变为了发送一个特制的、不会被计费的短信)给用户硬件,硬件启动gps并采集经纬度信息,post到服务器。这种方式定位周期较长(主要是gps启动时间长),并且耗电量较大,定位精度取决于gps精度,一般在5米内。 3、经纬度转换部分。主要指的是纠偏。由于使用了国内提供的地图,所得出的经纬度需要经过纠偏才能正确显示到地图上。最初为了节省成本,我们采用国内地图和谷歌地图叠加显示的方式进行比对纠偏,后来公司做大后,购买了正规的纠偏接口。经过实际测试发现两种纠偏的效果基本是一致的。 该项目最初由我一个人进行开发(不含硬件),包括服务器运维也为我自己负责,直到商业化之后、研发工作基本没了,我就不再参与了。但由于这个系统目前仍在商业化运行,我不便把它展示出来。
由于一些原因,我只能展示一下完全属于自己的小程序。以下是一个近期为了方便自己部分工作而开发的小型系统,开始于9月份,目前正在持续完善功能中。 项目共分为视频和音频采集监看及机房环境监测两个前端部分,以及一个拉流分析和设备控制功能的后端部分。 1、视频音频采集和监看部分。共监视监看两种不同类型的信号,主要采取采集、推流及直接转码推流两种方式。使用的主要设备是通用型视频采集卡、组播信号源。 流媒体服务器使用开源的SRS,采集、转码和推流使用FFMPEG命令行。界面综合展示部分使用NGINX+PHP。有*和pc端界面。 电台音频监听使用了多通道声卡进行采集、推流。 2、机房环境监测使用的是简单的ESP8266配合DHT11进行开发。前台界面使用了echar进行温湿度曲线显示。 3、由于该项目纯为个人使用,因此拉流分析及后续控制部分没有界面。主要运行原理是:1)持续拉流,判断服务器有无推流,如果断流,则直接通过IPPBX提供的接口拨打值班室*进行提示,要求检查设备运行情况;2)针对视频:使用opencv分析画面马赛克、黑屏、视频静帧等异常情况是否存在,如果存在,则标记为异常,进行预设的后续动作(通过串口向切换器发送应急切换指令);3)针对音频:使用ffmpeg分析音频响度,判断是否存在静音等情况。 4、除此之外,还根据现有的业务系统分别开发了视频文件损坏检测及响度自动监测和调整软件,及播出单分析软件,可对存在异常的播出单及时提示。 下图中,由于APP推流业务刚刚下线,因此显示为“连接中”状态。 该项目使用的语言主要是C#、python、PHP及javascript,数据库使用的是mysql,但也连接了sql server获取和分析数据。整个项目原理和实现并不复杂,最难的地方只是网络部分,因为各部分程序分布在4个子网中,每个子网均部署有一台以上的防火墙,网内还有各类安全监测和阻断设备,配置所有防火墙、三层交换机耗费了较多时间,尤其一些组播流需要穿透多台防火墙和三层交换机,这个实施起来很麻烦,最终配置好了安全策略和组播路由解决了。 本项目完全由我自己设计和开发,除使用了一些开源组件外,无其它人参与。 做这个东西纯粹是为了方便自己的工作,便于自己从日常繁琐事务中解脱出来,因此界面部分基本没怎么考虑,怎么方便怎么做了。