利用树莓派3配置调试RFID读卡器手记

背景

在现有的RFID人员热力追踪系统中关于硬件读卡器的配置和调试一直有难以使用的问题,原来的操作步骤是用笔记本通过usb串口连接,然后进行参数的调整和天线角度和功率的调试,在实际的现场环境中操作非常不便,所以才有了这次的解决方案。大致的方案是读卡器通过usb串口连接到树莓派3,然后手机通过WiFi连接到树莓派3,通过手机App下发指令给树莓派中转到读卡器,而且树莓派可以直接用充电宝供电,方便携带和安装,手机App可以方便灵活的调试天线的发射功率和角度。

Mac OS El Capitan下TensorFlow安装手记

TensorFlow简介

源引自百度百科

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从图象的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。
TensorFlow可被用于语音识别或图像识别等多项机器深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。

TensorFlow由python开发完成,源代码开源,又是Google开发的,再加上前段时间阿法狗取得的成绩,想不火都难,本文主要介绍如何在Mac环境下搭建TensorFlow环境,其实官网已经给出了教程,不过在实践过程当中还是遇见了不少问题,下面开始介绍安装过程。

利用LeapMotion控制Arduino的几种方式

简介

偶然看到某人用LeapMotion控制Arduino进而控制舵机,看似挺好玩儿的,恰好LeapMotion和Arduino都有,正好实现一个。示例中是用Processing接收LeapMotion数据并通过串口把数据传送到Arduino,先实现下这种方式,另外一种方式准备用LeapMotion连接mqtt消息服务器,Arduino接收mq消息。

基于mqtt的消息推送(三)客户端实现

MQTT简介

mqtt基于订阅者模型架构,客户端如果互相通信,必须在同一订阅主题下,即都订阅了同一个topic,客户端之间是没办法直接通讯的。订阅模型显而易见的好处是群发消息的话只需要发布到topic,所有订阅了这个topic的客户端就可以接收到消息了。

发送消息必须发送到某个topic,重点说明的是不管客户端是否订阅了该topic都可以向topic发送了消息,还有如果客户端订阅了该主题,那么自己发送的消息也会接收到。

另外需要重点说明的是QoS,这个代表消息的传输方式,QoS说明如下:

  • 0代表“至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。
  • 1代表“至少一次”,确保消息到达,但消息重复可能会发生。
  • 2代表“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

基于mqtt的消息推送(二)服务端实现

基于Mosca的服务端实现

Mosca简介,Mosca基于node.js开发,特性引用自项目首页介绍如下:

Features

  • MQTT 3.1 and 3.1.1 compliant.
  • QoS 0 and QoS 1.
  • Various storage options for QoS 1 offline packets, and subscriptions.
  • As fast as it is possible.
  • Usable inside ANY other Node.js app.
  • Supports Node.js v0.10 and v0.12.
  • Supports io.js v1.x and v2.x and v3.x (please do not use v3.1.0)

基于mqtt的消息推送(一)技术选型

背景

项目架构原来是App通过soap传输数据,由于部分数据是动态变化的,所以需要定时轮询是否有新的数据。由于更新的数据本身大小不是很大,考虑使用消息推送的方式来更新数据。