0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将智能家居系统与Tableau仪表板集成在一起

Tableau社区 来源:未知 作者:李倩 2018-03-30 10:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

你有想过将智能家居和 Tableau 结合么?Tableau 爱好者 Ann Jackson 就在自己家中,尝试实现将智能家居系统与 Tableau 仪表板集成在一起。根据灯光颜色非常“酷炫的”展示仪表板中的数据信息。想知道她如何脑洞大开?一起来看看!

Ann Jackson 曾在 Twitter 上发布了一个视频,展示了如何将智能家居系统与 Tableau 仪表板集成在一起。视频的内容就是三个灯泡的灯光颜色会随着仪表板中 KPI 结果的改变而动态变化。

她将照明设备连接到 Tableau 仪表板的原因除了 “比较酷炫” 之外 —— 还有一些很实际的原因。使用类似灯光的东西能够轻松表示 KPI 或 BAN ( Big ass number ) 的状态,让用户迅速理解数据信息!

实现这种展现方式,需要哪些准备工作?

为了实现智能家居系统和 Tableau 之间的集成,Ann Jackson使用了 Python 。因为已经有人开发了库并将它们发布到 GitHub 上共享,所以Python 非常适合这种情况。另外一个原因是 TabPy,它允许您连接到 Python 服务器并通过计算字段运行本地 Python 代码。这些计算字段将在 Tableau 工作表中作为表计算。一般来说,当您将 Tableau 与 Python 结合使用时,您会得到一个数字 / 字符串 / 布尔值。

当然,这不代表您不能拓展 TabPy 的功能,或者以其他方式来使用它。这正是这个项目的意义所在。因为这涉及到智能家居和她正在学习的Python,而 Tableau 是她的最爱。所以这个项目对 Ann Jackson 来说也是一个持续项目。

如果您想模仿 Ann 所做的事,那么您需要一些硬件设备。比如飞利浦 Hue 灯和配套的桥接器。理论上您可以使用其他智能家居部件。如果您不熟悉智能家居是什么 - 它基本上是通过桥接器向灯泡,给锁和恒温器等设备发出命令。它同时也是一种媒介,将您与智能家居系统(通常是移动应用程序)相连接,并将命令或程序转换为系统中的元素。具体到这个项目中,Ann 使用 Python 库与她的桥接器进行交互。她选用的库是 Phue,这是一个 Python 库,用于与 Hue API 的交互。

智能家居系统和 Tableau 集成步骤1下载并安装 Phue 到 TabPy

首先她下载并安装了 Phue 到 Tableau - Python - Server(又称为 TabPy)。这样就可以通过 Tableau 的 Python 脚本调用库。在安装过程中,还运行了一个简单的脚本将库连接到我的桥接器 – 这是这一切工作的必要步骤。您必须建立起传输控件和灯具之间的连接。

2使用 Python 进行测试和验证

接下来的部分就是输入代码,使用 Python 进行测试和验证误差,以及体验 Tableau 的乐趣。以下是最终计算出的结果:

利润率 KPI - 这是我们都熟悉的指标。我已经完成了基本的利润率计算,并根据参数进行了计算。计算结果将是 0 或 25000 。数字 0 和 25000 对应于灯泡的颜色输入。 0 是红色, 25000 是绿色。

这里是纯 Python 的计算字段。在这种情况下,我实际上并没有使用 Python 来压缩任何东西并返回结果,所以您会注意到返回参数是一个虚拟数字 1 。

3使用 SCRIPT_INT 函数

您将在 Tableau 编辑器中的计算字段描述中看到它 - 要使用 SCRIPT_INT(或任何 SCRIPT 函数),格式为:将代码放在引号中,任何输入或参数都使用 _arg1, _arg2, _argN 。这些参数用逗号隔开。在例子中有一个参数,[ Profit Ratio KPI ],它被分配给了一个代码。

代码基本步骤如下:

设置 [ Profit Ratio KPI ] 为 a

导入 phue 库,以便我们可以使用它

使用桥接器(我内部网络中服务器的 IP 地址)

将光的饱和度设置为 254 - 这是额外的代码,但这能确保光线具有全饱和度

将 light hue 设为 a 值

返回1 - 只是为了好玩!

在测试此代码时,打开 Jupyter notebook,输入相同代码以在 Tableau 之外的地方对其进行测试。在正常情况下,可以给 a 分配一个数,运行代码,并有灯光改变颜色。在 Tableau 中,则必须调用参数的第一个变量 “ [ 0 ] ” 。因此,为了分离出想要的结果,必须在一个变量列表中指定想要的元素。所以 Ann 的 KPI 结果实际上就像 Python 符号中的[ 25000 ],被称为 _arg1 [0](non-Python folk:Python 的变量从 0 开始)。

从字面上看,所有事情都是在设置和构建 Tableau 组件。构建 BAN 并添加参数以动态输入目标变量。在输入正确的代码后,其他所有内容都将连接并正常工作。以下是其中一张 BAN 工作表的样子:

计算字段未在视图中的任何其他位置使用。(如果您在默认的工具提示上悬停,结果会显示 “1”)。

一旦设置了可视化,只需要与仪表板交互此集成就开始生效。在 Ann 发布的视频中,这个交互速度并不快。这是有原因的 - 从 Tableau 开始接受计算参数,将其传送到 Python 服务器,然后等待结果返回,这里需要一段时间。

Ann 进行的尝试非常有借鉴意义,如果你也有相似的想法,不妨参考本文进行下实践,也许您也能制作出更 “酷炫” 的数据展现形式!这是一个非常简单的整合和演示,通过几行代码,数据驱动的表现就可以存在于物理世界中。这也是物联网的一种应用,如果你对物联网有着浓厚的兴趣,那还不快来参加本周四 Tableau 举办的网络分享会!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能家居
    +关注

    关注

    1945

    文章

    10056

    浏览量

    198034
  • python
    +关注

    关注

    59

    文章

    4892

    浏览量

    90417

原文标题:利用 Python 的力量,实现 Tableau 与智能家居系统集成

文章出处:【微信号:TableauChina,微信公众号:Tableau社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于STM32与机智云的智能家居系统(完整项目)

    物联网与嵌入式技术推动智能家居成为主流,传统家居存在功能单、监测不全、控制繁琐等缺陷。本文设计基于STM32F103C8T6与机智云平台的智能家居控制
    的头像 发表于 05-15 18:04 189次阅读
    基于STM32与机智云的<b class='flag-5'>智能家居</b><b class='flag-5'>系统</b>(完整项目)

    Echelon电力线智能收发器:创新技术引领智能家居新时代

    收发器以其卓越的性能和创新的设计,成为了众多应用领域的理想选择。今天,我们就来深入了解下Echelon电力线智能收发器的特点和优势。 文件下载: 15330R-1000.pdf 、产品概述 Echelon的电力线
    的头像 发表于 03-31 09:10 200次阅读

    多控制模式的智能家居系统设计

    随着物联网技术的发展,智能家居的需求不断增加,但仍存在设备兼容性差和成本高等问题。本文提出了种基于STM32单片机的多模式智能家居控制系统,该系统
    的头像 发表于 01-15 18:01 965次阅读
    多控制模式的<b class='flag-5'>智能家居</b><b class='flag-5'>系统</b>设计

    基于芯源CW32 MCU智能家居照明控制系统设计与实现

    ,增强智能家居体验。 多房间灯光控制:通过扩展多个CW32 MCU节点,系统可以实现对不同房间的灯光独立控制,每个节点通过统的Wi-Fi网络接收指令。 情景模式:用户可以设置多种情景模式(如电影模式
    发表于 12-03 06:06

    Matter技术重塑智能家居生态系统

    长期以来,智能家居行业直受到不同品牌和平台之间兼容性问题的困扰。比如,购买的智能灯泡可能无法与智能音箱联动,智能门锁也难以与其他安防设备协
    的头像 发表于 09-10 16:29 1.6w次阅读
    Matter技术重塑<b class='flag-5'>智能家居</b>生态<b class='flag-5'>系统</b>

    Nuvoton ChipCorder在汽车仪表板中的应用

    的调查结果强调了对汽车音频的需求不断增长,特别是在标准仪表板配置中。这需要能够快速传递各种紧急警报并提供直接、快速的语音提示的直观功能,确保及时向驾驶员传递信息。 预编程播放录制的音频文件 各种车辆信息
    发表于 09-05 06:07

    智能家居芯片:技术核心与创新突破

    智能家居芯片是智能家居系统的"大脑",负责实现设备互联、数据处理和人工智能功能。随着物联网和人工智能技术的快速发展,
    的头像 发表于 09-04 16:25 1154次阅读

    N9H20如何将 SPI 闪存与非作系统 BSP 一起使用?

    N9H20如何将 SPI 闪存与非作系统 BSP 一起使用?
    发表于 09-01 08:27

    N9H20如何将非作系统 NVTFAT 与 SPI 闪存一起使用?

    N9H20如何将非作系统 NVTFAT 与 SPI 闪存一起使用?
    发表于 09-01 06:38

    如何使用 SEGGER emWin AppWizard 工具为仪表板界面设计图形用户界面?

    如何使用 SEGGER emWin AppWizard 工具为仪表板界面设计图形用户界面 (GUI)。它集成了控制 MA35H0 系列评估上的 LED 和按钮的功能。
    发表于 08-19 07:23

    集成MT9103线性霍尔传感器提升智能家居控制精度与系统智能化水平

    随着智能家居市场的快速发展,用户对控制精度和系统智能化的需求日益提升。在这背景下,集成MT9103线性霍尔传感器成为提升
    的头像 发表于 08-15 17:20 1302次阅读
    <b class='flag-5'>集成</b>MT9103线性霍尔传感器提升<b class='flag-5'>智能家居</b>控制精度与<b class='flag-5'>系统</b><b class='flag-5'>智能</b>化水平

    无法Jlink调试器与CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起怎么解决?

    我无法 Jlink 调试器与 CYBT263065EVAL COOLDIM_PRG_BOARD连接在一起
    发表于 07-03 06:24

    如何将I2S与音频源一起使用?

    ,但 I2S 选项变灰。 我可以通过选择 .wav 来播放其他音频 定义。 如何将 I2S 与音频源一起使用?
    发表于 06-30 07:36

    舵机在智能家居里的应用

    舵机在智能家居领域应用广泛,主要体现为:1)控制智能门锁、窗帘等家居设备;2)提升扫地机器人越障能力和洗地机自清洁功能;3)驱动家居机器人完成取物等任务;4)应用于
    的头像 发表于 06-25 15:38 1382次阅读
    舵机在<b class='flag-5'>智能家居</b>里的应用

    物联网天线如何影响智能家居发展

    智能家居解决方案正逐步融入几乎所有家用电子设备。智能扬声器、智能照明、智能恒温器和集线器是智能家居的早期产品,而如今,我们看到所有主要电器都
    的头像 发表于 06-12 10:16 1571次阅读