查看: 1441|回复: 5

[项目] 掌控与APPInventor互动——APP图传掌控板

[复制链接]
本帖最后由 空军一号 于 2019-7-27 19:26 编辑

              最近在学习一些网络的知识,弄懂了一些内容后,就想练练手。什么题材好呢?我比较喜欢拿开源硬件和APPInventor互动,在有这个想法的时候,忽然想起APPInventor工具的画布组件中有这样的一个积木块:获取单点色值,从来没用过这个积木块,但是觉得一定能用它做一个好东西。于是就有了今天的这个作品。    截图201907271918365967.png
1、这个案例能完成什么(或者说整个程序原理)
     a、手机端,加载图片或者拍照获得照片(最好是黑白比较分明的照片),作为传送的图片原版;
     b、将该图片设置为画布的背景图片,(画布的高和宽设置成128*64)
    c、通过上述画布“取单色色值”的组件,获得每个坐标点的色值,对色值进行判断,返回0或者1
截图201907271919214994.png
d、每八个点的色值作为一个单元(即八位二进制数),将其拼接成一个文本。(实质上上述过程是对图片取模的过程)
      参考程序过程“对图片取模”
截图201907271920106332.png
完成这个取模过程后,就完成这个案例的一半了。
      e、通过网络的post方法(因为POST方法可以传输的数据量比较大),将数据取模结果发送给掌控板。
     至此,APPInventor端的程序基本就结束了。
截图201907271920478092.png

f、掌控板作为服务器,接收到取模数据后,对数据进行处理(主要是字符串操作与数据格式转换),将收到的图片取模数据转换成OLED显示图片函数所需要的格式。最后加以显示就可以了。

2、这个小案例怎么玩?

      a、在掌控板程序中,需要将wifi账户和密码改成自己所用的wifi账户和密码,同时保持手机处于同一个wifi下;

      b、将程序刷入掌控板;

      c、掌控联网成功后,oled显示屏上会显示掌控板的IP地址,如下图,IP为192.168.1.100

截图201907271921171758.png


d、将手机端的程序服务器地址的IP改成掌控板的IP


截图201907271921538789.png

e、程序中自带11张黑白单色马的图片,可以使用按钮,切换图片。点击“发送”按钮,即可将图片取模发送至掌控板显示。
   f、如果想把自己喜欢的图案传到掌控板,可以使用“打开”按钮,选择手机中的图片加以显示,或者拍照获得图片。
3、程序尚存在的问题
    a、该小程序,只能显示黑白色较为分明的图案,对于彩色图案的显示,成功率较低。另外,因为手机图片大多是4:3的比例,而掌控板OLED是128*64的点阵屏,所以难免存在图片变宽变形。
    b、掌控板的程序还存在一个未知的bug,能力有限,暂时还没找到问题所在,希望广大朋友老师可以找到并解决问题。但是大多数情况下,掌控都可以正常运行的。异常如下:
截图201907271922297788.png
后续:由于时间较紧,最近也比较忙,所以暂时来不及录制整个小案例的制作过程,但是有时间肯定会录制并讲解给大家,敬请期待。









APP图传掌控板.rar

309.08 KB, 下载次数: 100

汤果  高级技匠

发表于 2019-7-28 06:34:04

很有趣的案例。学习了~
回复

使用道具 举报

rzegkly  版主

发表于 2019-7-28 06:37:00

掌控与APPInventor互动新方向

回复

使用道具 举报

gada888  版主

发表于 2019-8-3 21:07:47

这个挺秀的
回复

使用道具 举报

机器之心  学徒

发表于 2019-10-17 21:05:22

TypeError: object with buffer protocol required
请问这个错误是什么意思?怎么解决?

回复

使用道具 举报

空军一号  初级技师
 楼主|

发表于 2019-11-11 15:25:17

机器之心 发表于 2019-10-17 21:05
TypeError: object with buffer protocol required
请问这个错误是什么意思?怎么解决?

掌控程序解码时候的decode函数那里应该使用异常捕获结构,也就是try   except结构,因为传输的数据可能是错误的,所以在decode时发生了错误。
网络数据流是不稳定的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2020 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail