分类: 产品策划

  • 自制热敏打印机连接器始末(2)从跨平台方案开始

    接上一篇,选择vue+electron之后,那就按electron-vue这个来。虽然能跑起来,但是代码上传到git以后,收到很多高危报警,https://github.com/futuremeng/electron-vue-escpos-bridge

    尝试升级一下,结果发现因为版本已经差太多,需要花很多时间修,遂放弃。通过检索,发现有一个新的方案,https://nklayman.github.io/vue-cli-plugin-electron-builder/

    于是,开启新的https://github.com/futuremeng/vue-electron-builder-escpos-printer-bridge

    先用vue cli4创建一个新的项目,再vue add electron-builder。尝试运行yarn electron:serve 的时候提示Vue Devtools下载失败,需要翻墙跑成功一遍才行。

    接下来分析打印机如何连接,通过检索发现escpos这个协议,据说是大部分打印机都支持的。那么是否可以用escpos直接驱动打印机呢,网上有树莓派的示范。

    在寻找合适的escpos驱动的时候,发现了各种版本的,除了java、python,还有php和node,我决定选择node版的https://www.npmjs.com/package/escpos

    但是,当然当我尝试引入到项目的时候,悲剧发生了。

    ERROR Failed to compile with 1 errors 16:30:59

    error in ./node_modules/escpos/statuses.js

    Module parse failed: Unexpected token (7:7)
    You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
    |
    | class DeviceStatus {

    byte = ”;
    | bits = [];
    | bitsAsc = [];

    @ ./node_modules/escpos/index.js 12:17-38
    @ ./node_modules/cache-loader/dist/cjs.js??ref–12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref–0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/App.vue?vue&type=script&lang=js&
    @ ./src/App.vue?vue&type=script&lang=js&
    @ ./src/App.vue
    @ ./src/main.js
    @ multi (webpack)-dev-server/client?http://192.168.3.139:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js

    见到是loader的问题,我就尝试配置babel-loader script-loader file-loader。都没有解决问题,实际上,我也不是很了解这些loader到底是干什么的。

    在这个过程中,了解到CommonJS和ES6这些区别,还有,在网页版的vue项目和electron中还涉及到运行环境的问题,网页中没有办法直接调用node接口。

  • 自制热敏打印机连接器始末(1)不想花钱,还想跨平台

    前情回顾:做了一个网站,需要在网页上打印二维码,将热敏打印机连到电脑上,在网页上直接用print打印出来的二维码完全无法识别,应该是分辨率的问题,因为屏幕的分辨率和打印机的分辨率差太多。所以寻找解决方案,找到了c-lodop.com这个网站提供的中间件,需要付费,而且只有win版。

    需求分析:现在重构网站,计划做成saas模式,在打印模块上,需要尽量摆脱第三方的束缚,所以构思如何自己实现。

    网页到打印机,这中间是网页-浏览器-操作系统-usb-打印机,这样一个路径。经过确认,网页直接连打印机是不显示的,有一个比较接近的办法是通过chrome的app方案,但通用性不高,放弃,那就只剩下跟lodop一样的模式了,要么把整个网站构建成桌面程序,要么通过中间件来连打印机,网页再通过http或者socket驱动中间件。

    当然,选择一个中间件是比较合适的,整个后台构建成桌面程序,没有必要,维护起来也太笨重。

    接下来,就是选择跨平台的桌面程序方案来做这个中间件了。需要实现几个部分,一是http或者socket,二是打印机连接,中间的打印机连接管理。

    当然,首选相对比较熟悉的vue+electron的方案。

  • 期待产品原型、UI设计与开发统一版本管理工具

    目前产品原型到UI设计,再到开发测试上线,是分离的,目前尚未发现有一统天下的工具和平台。

    我倒是非常渴望有这么一个工具,尤其对于小团队而言。具体的需求就是将产品原型、UI设计、开发测试三者的版本管理集中在一起,每个阶段的某个版本有若干状态,如设计中/已推送/已交付/已验收。墨刀实现了产品经理与UI设计之间的协同,如果再能与开发协同一下则更棒。

    对一个项目而言,有这么几个部分,页面树、工作流、页面。页面是基本元素,页面数上可以标注该页面存在的生命周期,如从v1到v4,或者从v3到v5,并且设定发布的url,可以包括测试版地址和发布版地址,工具根据url自动快照,获取当前版本,并通过图像识别对比差异,只保留变更的版本,存入版本库。而产品原型和UI设计的版本分别由产品经理和UI设计师标注和提交。查看时,可以查看最新版,也可以专门查看某一版本的执行情况。

  • 融媒体出版物《全民经典朗读范本》

    所谓融媒体,无非相对传统的图书来说,除了平面的图文,又多了音频视频和app式的用户交互。不过这些组合带来的是投资的极大增加,一本几万块钱可以搞定的书,也因此需要数百万的投入。

    这种形式,适合一定类型的阅读,比如一本讲朗读艺术的书,如果只是用文字来描述,一定不如这些朗诵艺术家亲身示范来得有用,再加上用户自己可以录音并回放,甚至上传到网上参与分享和比赛,那才是一个与实践相结合的学习过程。

    这本书定价118元,想买的话自己淘宝吧。

  • 城市家用电动三轮车应该是什么样的

    1. 车身涂成校车风格,黄色为主 2. 后座加装安全带 3. 加装行车记录仪,当然这个可以自己装,如果能预装更好,好走线 4. 电池安装位设计位方便拆卸的,如果能内置一个小拖车更好,方便带到楼上充电 5. 后背可以参考汽车两厢改成掀背式,方便折叠后座后拉点东西,这样也可以作为取下电池的方式。

  • 智能足球

    将足球内部安置智能控制平台,靠摄像头或其他探测设备判断位置感知环境,来应对主人的追赶或拦截,至少可以开发出追球游戏,或守门游戏。

  • 基于微信的社交导盲系统设计

    在Arduino中文论坛上,看到不少关于导盲系统设计的帖子,多数集中在导盲杖或者类似设备的设计上,GPS只能提供粗略的定位功能(10米级别),精确定位(对盲人来说至少需要到10厘米级别,迈步还是不迈步的问题)是难题,于是我决定引入社交网络来解决这个问题。
    20140505-181934.jpg

    (更多…)

  • 红外触发式高音驱狗器-汽车轮胎防狗尿设备

    材料:

    1. 防水盒一个,淘宝,6元;

    2. Arduino Nano一块,或者更小的板子,只要一个输出,一个输入即可,淘宝,37.5元;

    3. 人体红外感应模块一个,淘宝,5元;

    4. 高音喇叭一个,淘宝,22元;

    5. 12V电池,淘宝,暂时没找到配套的电池盒,自己焊一个问题不大,3元;

    6. 螺丝若干。

    合计73.5元。

  • 儿童数字出版的方向是基于物联网的智能玩具群落

    目前儿童数字出版的产品使用终端,以PC、平板电脑为主,前者体验最差,平板对于孩子来说,依然是极其缺乏想象力的东西。而有着悠久历史和深度认知的儿童玩具目前还停留在石器时代,未来一定是通过物联网技术,将玩具纳入到智能网络,加上数字出版平台的内容支撑,变成全新的儿童数字出版形态。

  • 车载声控航拍系统“探路者”设计方案

    qida

    车载声控航拍系统“探路者”是一套可以帮助使用者迅速获取前方路况的装备,也可以作为电视直播车的航拍扩展。

    涉及装备:

    (1)多翼微型飞行器一台(带GPS及3G或4G网络设备),可自动返航,示意图中的四翼航速有限,需要加装两个水平固定翼;

    (2)微型摄录设备一台(支持网络传输),加载到飞行器上,并通过其网络端口传输数据;

    (3)车顶固定停落台,供飞行器停落和无线充电,也充当车载天线;

    (4)车内声控终端,包括状态显示、视频显示、姿态控制等功能。