骑在龟背上监测保护区的树莓派

为了引起人们对野生动物面临威胁的关注,动物保护技术组织Arribada的创始人戴维斯设计并制作了多款低成本的野生动物观察工具。从可以唤醒并检测动物路过的自动相机,到可以在特定动物出现时发出警报的设备……他认为设备成本不应该成为帮助极度濒危动物的障碍。

在龟背上拍摄的照片

挑战

Arribada的第一个项目是监测绿海龟,他们需要一套强大但成本不高的设备,可以在偏远的地方使用,而且不需要人为干预。这个设备将显示渔业和人类活动对绿海龟的影响,以及为这种濒危物种引入什么样的保护措施提供线索。

为了追踪海龟,Arribada 的解决方案需要能够在海龟游动的深度下防水,以及能够在没有人为干预的情况下可靠地运行。它还需要既经济又易于被当地研究团队使用。

解决方案

最终的成品,将Raspberry Pi Zero和Raspberry Pi相机模块封装在了一个轻巧的防水外壳中。这可以无害地附着在海龟的壳上,以跟踪它在海浪下的旅程。设备将捕获照片、视频和位置信息。一旦视频录制完成,设备就会从海龟的壳上脱离。这样既不影响海龟的活动,又可以拍下海龟们的行为。

其中的一个挑战是,GPS定位只有在海龟浮出水面时才有效。但在游动中,海龟浮出水面的时间通常不到两秒,根本来不及唤醒监控设备以获得三角定位,因此Arribada开发了自己的Horizon Assted-GPS标签,作为基于树莓派Zero套件的关键部分。

戴维斯表示:“你可以想象在Raspberry Pi设备上为海龟运行AI模型的好处,我们可以唤醒设备,捕获场景,处理场景,我们甚至可以让设备做出一些明智的选择,这值得记录吗?回去睡觉还是应该留下来?”

除了做出“继续监控”或“进入睡眠周期”的决定之外,使用 Raspberry Pi 还可以获得机器学习优势。比如下载新模型,训练模型,调整和审查视频内容。Arribada可以用很低的成本完成这一切,因为树莓派非常实惠。

这种方法已经让Arribada成为一个成熟的研究合作伙伴,动物保护组织对Edge ML将要做的事情表现出了“真正的兴趣”。已经不只在海龟身上使用它。”

一个由树莓派驱动的设备正在南极洲监视企鹅

另外,有一些项目需要定制的解决方案。塞浦路斯的情况就是这样,该国历史最悠久的动物保护机构 —— 海龟保护协会(SPoT)就热衷于使用LoRa无线电通信来监测捕鱼活动。

而Arribada基于船只的LoRaWAN网关就可以提供当地捕鱼活动的详细信息,并报告该国沿海五个重要海龟繁殖地的任何潜在威胁。塞浦路斯的通信法规要求SIM卡在使用四个月后进行注册,这使得在那里用蜂窝通信很麻烦,因此使用树莓派4和树莓派以太网供电帽来设置LoRaWAN。这种设置也意味着船主不用为船上的跟踪系统支付任何费用。一根8米高的天线就能搞定一个强大的监控系统,可以清晰地发现半径15公里内的任何渔船。

结果

Arribada用树莓派收集的视频理清了海龟的数量,并揭示了它们的筑巢地点。支持了在一年中的特定时间禁止进入特定海滩和沿海区域的论点 —— 这是对这种濒危物种的重要保护。

以前,环保主义者需要的许多摄影工具都标价很高,以至于研究项目要么变得不可行,要么最终在范围上受到严重限制。高昂的费用让很多项目只能进行一次监测,而不是重复监测以跟踪一段时间的变化。

防水外壳通常是套件中最昂贵的部分

用不到50英镑的树莓派相机(带有树莓派Zero或Zero W),而不是500英镑的商业相机。意味着可以部署更多设备,覆盖更大的范围,从而提供更准确的统计结果。在大多数情况下,3D打印的防水外壳是每个套件中最昂贵的元素。随着最新树莓派相机硬件的出现,Arribada能够对图像和视频捕捉能力进行巨大的改进。

Arribada还赢得了企鹅观察项目的肯定,这是一个广泛的研究项目,监测世界不同地区的企鹅数量。Arribada由Python控制的树莓派相机装置比企鹅学家以前用的商用相机便宜至少三倍。费用的减少意味着研究团队不用太过计较设备的放置地点,把设备留在原地进行远程监测也更加放心,因为有些设备不可避免地会受到损坏。

事实上,这些硬件设备对温度的适应能力令人印象深刻,在Arribada团队进行维护之前,企鹅观察相机在南极度过了三个冬天。他们能够检索到三年的照片,并发现树莓派的设备每天都能可靠地拍摄并保存一张照片。这些照片直接促成了人们对气候变化和企鹅栖息地丧失的思考和讨论。

Arribada的官网:

https://arribada.org/

京郊诡宅(1)

作者:王文文

(本故事纯属虚构,请勿对号入座)

“咚……咚咚…咚嘚嘚咚咚咚……”

手机铃不知道响了多久,睡得朦朦胧胧的我按了接听键。

“老麦,这周六有空吗?来趟北京呗。”

电话里传来一个三十多岁女人的声音。

“嘉琪?找我什么事?”

我听出了那是前同事嘉琪的声音。自从我从北京搬到上海以后,已经三年多没联系了。怎么突然……

“最近忙吗?”

“还好,怎么?”

“我这接到一个委托,说是石景山那边有个老宅闹鬼,想让你来看看……”

“闹鬼!?这种事情你不是应该请和尚或者道士吗?我只是一个普通人。”

我忍不住打断她。

“道士早就请过了。但这位道长很奇怪,他去看过以后就表示自己不适合处理此事,建议另请高明。我的委托人求了他半天,他只好在屋里贴了几张符纸,茶都没喝就走了。我想起你喜欢研究奇奇怪怪的东西,对这里也熟悉,所以想让你来看看。”

“这……你们就没想过报警吗?我也没搞过这种事情啊。”

我在床上翻了个身,还是不想接这个活。

“大户人家,不想太高调。再说了,警察也不管鬼神啊。你先来这边看看再说,实在不行我再找别人……机票钱给你打过去了。”

手机突然响起收款的提示音:“支付宝到账……”

听见具体的金额后,我把到嘴边的话又咽回去了。

简单确认了一下行程,我跟嘉琪约好,这周六早上到北京。

周六一大早,我便从上海虹桥到达了北京大兴。嘉琪没露面,在出口处接我的是一个高大的年轻墨镜男和一位戴着金丝眼镜的中年男人。

“您一定是嘉琪的朋友,麦先生。”金丝眼镜看到我之后,主动伸出了手。

“你们是?”

“我是佟先生的秘书,你叫我Peter就行。这是负责我们安全的保镖兼司机小刘。”金丝眼镜做了自我介绍,边上的墨镜男向我点了点头。

简单的寒暄后,我们坐着一辆SUV往北京的西北方向开去。

路上我试着打听即将要去的位置,以及这次行程的相关情况。

但Peter总是一副“你到了就知道”的表情。

看他们两个违莫如深的样子,我也不再多问。

车沿着京雄高速转进西六环,又继续向北疾驰,一路是华北地区特有的风貌。

只是天气比较阴沉,连日的大雨,让路面很是湿滑。让我不禁怀念起之前那个晴朗干燥的北京。

“听说麦先生之前在北京工作?”可能车里太过安静,Peter想找些话题。

“嗯,之前在北京做IT。”

“现在呢?”

“还是做这一行。”

“没干过别的?”

“嗯,一直是做IT。”

“哦……”

难道做IT有什么不好?还是觉得找一个IT人士来处理此事不太靠谱?

Peter的语气,听上去似乎有点失望。

“这里有一份保密协议,您先看一下。”

Peter递过来一份打印好的协议书,我扫了下并没有什么特别,在右下角签上了我的名字……

“我靠!”

小刘突然一个急刹,车身陡然一偏。绕过了一团黄影。

“什么东西?”

Peter惊呼一声。

“是狐狸……”

我正好看清了,是一只嘴里叼着松鼠的狐狸,满脸的鲜血。表情甚是可怖。

“真邪门!差点就撞上了。最近怪事真多。”

“奇怪,这里怎么会有狐狸?”

小刘多少有些激动,而Peter皱起眉头,问了一个我也想问的问题。

北京的松鼠很多,但狐狸却非常少见,而且野生狐狸一般不会在人类活动区出现,更别说跑到公路上了。

难道是因为最近多雨,它们找不到食物才……我心里琢磨着。

车子大概开了一个多小时,来到阳台山下的一个疗养院。

我想起风景优美的妙峰古道就在附近,是徒步者和骑行者喜欢的一条路。不过最近这雨水太多,妙峰古道也没什么好走……我把心收了收,开始认真的打量起眼前的疗养院。

这个疗养院看上去是私人性质的,占地面积不大,位置却很好,也很安静。核心建筑是一座白色的三层小楼,院子里郁郁葱葱,能看见有两个工作人员在忙碌。

“老板,麦先生到了。”

循着Peter的声音,我看到客厅里坐着一个四十岁左右的中年男人。戴了一副黑框眼镜,手腕上有一块瑞士机械表,看上去文质彬彬。

边上还有一位穿着蓝色吊带裙的女人,看上去二十几岁,所戴的一对蓝宝石耳坠甚是醒目。虽然戴了墨镜,化了淡妆,但掩盖不住脸上憔悴的神色。

“麦先生,你好。我是佟奕,这是我女朋友薇薇。”

分别和两人握了握手之后,开始了一阵寒暄。大致是问我的经历和工作之类的。

一个女服务生适时的把茶端了上来,我喝了两口,等着他们进入正题。

“麦先生,您相信这个世界上有鬼吗?”

佟奕突然这么一句,让我有点讶异。

“呃……我相信大部分事物是可以用科学解释的,但少部分无法用科学解释的事物,也确实存在。”

听完我的回答,他微微点了点头。

“说来不怕麦先生笑话。我有个宅子出了点状况,把人都给吓病了。”

“具体是什么情况?“

他这么含蓄,反而激发了我的好奇心。

“咳……我们在石景山有一个宅子,里面发现了脏东西……”

佟奕没怎么说话的女朋友突然开口了。

我这才注意到,她是前段时间热播的宫斗剧《金枝玉叶》的女二号,贵妃如玥的扮演者许薇。

虽然戏份不重,但却是冉冉升起的一颗新星。

怪不得要我签保密协议。

“那是我们三年前买下的一套民国老宅,原本是自己住的,但由于远离市区,多少有点不方便。去年我和佟奕商量,打算把它改建成民宿,对外营业。没想到上个月开始,就出现了奇怪的事情,半夜睡觉会听见有人喊我的名字,而且屋里的灯也会忽明忽暗不受控制。到了白天,一切又像没发生过。上星期的一天,我遇到了可怕的一幕……午夜时候,雷阵雨刚下完,我就听见睡梦中有人在呼唤我,我跟着声音走到楼下的落地窗边,突然看到黑暗中有一个面目狰狞的清朝女人向我发出了凄厉的惨叫。我被吓晕之后,就暂时搬到了这里,再也没回去过……”

许薇的话音微颤,似乎心有余悸。

不会是宫斗剧演多了导致的心理疾病吧?我忍不住撇了她一眼。

“那里现在还有人住吗?”

“宅子以前的主人,老吴一家三口还住在那里。把宅子卖给我们后,他们也没地方可去。我就让他们留下来帮着照看院子了。”

佟奕接过话头,回答了我的问题。

“哦……”

“不着急,您今天先在这里休息。明天早上再过去看看……”

“行。”

佟奕让Peter和小刘安排我休息。我看了一下这里的客房,干净而整洁,就先拿着行李入住了。

临了,Peter给我一个信封,里面是老宅的一些照片和相关信息。

我把照片一张一张摊在床上,挨个扫了几眼。

“咚……咚咚…咚嘚嘚咚咚咚……”

手机响了起来,是嘉琪打来的。

“怎么样?已经沟通过了吧?”

“嗯。你怎么没告诉我,这次还牵扯一个明星啊?”

“哈哈,被你认出来了。我本来还想着,不要给你增添心理压力……”

哼哼,是怕我加钱吧……我忍住了吐槽的想法,赶紧把心里的疑问说出来。

“许小姐这个会不会是单纯的精神疾病?”

“不。出事以后,我陪她去做过精神鉴定,也和心理医生聊过,结果都是正常的。”

“那她平时有得罪什么人吗?”

“我查过了,许薇平时人缘很好,在圈子里口碑也不错。应该没有得罪什么人。”

“OK……”

挂掉嘉琪的电话,我又在网上查了一下。有意外收获。

关于这个宅子,居然还有段传闻。

说是民国的时候,一个年轻军官在此地偶遇吴家的大小姐,两人私定终身,相约白头到老。

可前线战事吃紧,这位军官不得不离开这位吴小姐,赶赴前线。

不料短短相处的几日,吴小姐珠胎暗结,竟有了身孕。

只见肚子一天一天变大,又遍寻军官不得。吴小姐便打算先把孩子生下来,自行抚养。

但吴家的长辈忍不得这种事,非要把吴小姐赶出家门。

于是在一个雷雨夜里,孤苦伶仃的吴小姐带着肚里的未出生的孩子,上吊自杀了……

我看了看网页,又看了看手上的照片,不知不觉已经很晚。

第二天一早,我喝了杯咖啡,便和Peter、小刘驱车向石景山郊区前进。

车子大概开了半个多小时,来到了那个中式大宅。

这宅子占地面积比我想象的要大,但不是北京明清时期流行的四合院,而是民国初年带点欧式的建筑。既保留了中国的传统,又吸收了一些西洋建筑风格。门口是一片平整的草地,看样子有人精心打理。

主楼已经做了现代化改造,一层的客厅外侧换成了落地窗。宅子的后面有一个精心构建的小花园,种了不少月季和绣球。花园中间还有个水池,前后各有一条开放式水道,能听见细细的流水声。

大宅的外围是一圈红墙,看着非常气派。

我们一行三人来到客厅,透过几盆富贵竹,我看到了墙上贴的黄色符纸,上面有朱砂画的符箓。

看来,近期确实有道士来过。

此刻虽是夏季,但在这个宅子里却一点也不感觉热,反而有点凉飕飕的感觉。这空调也没开啊。难道有冷却水循环?我正在思索着,突然听见……

“这是……麦先生?”

一个六十多岁,干干瘦瘦的老头出现在我身边,我竟然没有察觉。

“哦,我来给你介绍一下。这位是老吴,那边是他的媳妇,我们都管她叫张婶……”

很明显,Peter和小刘也没觉察到老吴的突然出现。

我们三个大眼瞪小眼,不知道他是怎么飘过来的。

“你好。”

我赶紧把手伸了过去。

老吴轻轻的握了握我的手。

“佟先生之前吩咐过,说麦先生今天会来,让我负责接待一下。”

老吴的头发都白了,但看着精神很好。张婶正在不远处擦着窗户,向我点了点头。

“许小姐之前是不是住在楼上?”

“对。”

“哦……那我先上去看看。”

顾不上寒暄,我打算趁着白天光线好,赶紧探查一番。

来到许薇之前住的二楼卧室,里面有些暗。但空间倒是很大,一张古色古香的水曲柳木床甚是显眼,看着就很舒服。

我试着躺了上去。

按照许薇的说法,她是睡在这里,半夜突然有人叫她的名字,然后从楼梯走下去,

最后看到一楼落地窗出现的清朝女鬼……

我的视线继续在房间里移动,突然看见床头居然站着个女人!

我一下坐了起来。

仔细一看,这才发现是个模特人偶。

脸朝着屋内侧,穿着一身黑色旗袍,一副清冷淡漠的表情,甚是逼真。

看来刚才我只顾看床,没注意床头。

这可能是许薇平时用来试衣服用的吧……

向老吴借来梯子以后,我又到房顶看了一圈。不过只寻得几片落叶,没有什么近期人类活动的痕迹。

作为一个两层楼的建筑,这里倒是不高。

我又看了一眼红色的外墙。

雷雨天,红色墙壁,清朝女人……

我突然想起一个有关北京故宫的传说。

话说1992年的一天。北京下着大雨,但是人们游览故宫的兴致依然不减。故宫里人头攒动,热闹非凡。就在这时,诡异的一幕发生了。突然天空中划过一道闪电,紧接着故宫的墙壁上出现了一群清朝的宫女。还没等人们反应过来,影像就消失了。整个过程仅仅几秒钟,在场的多位目击者都被惊到了。

于是游客开始议论纷纷,觉得那是宫女们的鬼魂。可能是在战乱中死得不明不白,心中有怨气。所以才会在电闪雷鸣的时候出现……

而一些专家的解释是,故宫早期的墙面涂料中含有四氧化三铁。而四氧化三铁又具有录像的功能。当雷电击中墙壁时,形成的电流激活了四氧化三铁产生磁场,记录了当时的声音和影像。因此在电闪雷鸣的雨天,这群走过的宫女碰巧被录了下来。再遇到电闪雷鸣的时候,这墙就又把之前录下的影像释放。

当然,这个解释有点牵强。此事目前依然是故宫的一个未解之谜。

下了楼,发现老吴和Peter、小刘正准备抽烟。

“怎么样,要帮忙吗?”

看到我,他们赶紧聚了过来。

“暂时不用。”我摆了摆手。

透过客厅的落地窗,我发现外墙离这里的距离比较远。即使在雷雨天墙上播放影像,也很难看清楚。而在许薇的描述中,那个清朝女鬼几乎是贴着落地窗和她见面的,而且还发出了凄厉的惨叫声……如果红漆涂的墙都有这种效果,那就没人敢买了。

还在琢磨的时候,我看见外面有个戴着眼镜的年轻人,正拿着扫把清理院里的落叶。

“那是?”

“我小儿子吴亮,大学刚毕业后没多久,就先在这里帮帮忙。”

老吴一边说着,一边给我递烟。

“不抽,谢谢。”

我摆了摆手,沿着落地窗看到了屋檐的监控摄像头。

“闹鬼当天的监控能给我看看吗?”

“您随我来。”

老吴带着我和Peter、小刘三个到了配电室。

随后我们找到了许薇撞邪那天的视频,事情发生的时间在凌晨1点左右。

只见她穿着睡衣,似乎被什么召唤着,慢慢走下楼梯。在靠近客厅落地窗的时候,突然吓的一屁股坐地上,然后就晕过去了。但她听见了什么,看见了什么,我们无从知晓。

然后在早上6点左右,老吴的妻子张婶发现了她。随即将她送往了医院。

我又看了同一时间的外部监控,院子里并无异常,没有人也没有动物经过。

按照许薇的描述,当天是有打雷的。所以视频里能时不时看到远处的突然的白光。

“那天你们都在附近吗?”

“只有我媳妇在家,我和儿子去市里进货了。第二天早上才回来。”

“哦……”

我若有所思的看了看老吴,突然很想跟他确认一个事情。

“老吴。这个地方以前是你们家的吧?怎么卖给佟老板了?”

“轰隆隆!”

老吴还没说话,天空突然划过一道闪电,伴随着雷声,这天色一下就暗了下来。

众人一怔。

“这天变的可真快,刚才还好好的。”

Peter把手上的烟放回烟盒,悻悻的说道。

“今年夏天的雨好像特别多。”

小刘随即走到墙边,把灯给打开了。

房间里恢复了光亮。

我看到老吴的脸上露出一丝不易察觉的苦笑。

“不瞒麦先生,这之前是我吴家祖上传下来的房子。原本是我和我哥吴颙两家同住。我哥和嫂子膝下无子,十年前两人因病相继去世,这大宅子就只剩我们一家在住了。三年前我大儿子做生意赔了很多钱,小儿子又在读书。为了筹钱,我只好把这个宅子卖了。本来我们是应该搬出去的,但佟老板宅心仁厚,知道我们没地方可去。就以雇佣园丁的名义,把院子后面的几间空房留给了我们。于是我和老伴依然住在这,帮着打理这个宅子……”

“那……这里真的死过人吗?”

听到一半,我忍不住问他。

“麦先生应该是听过外面的一些传闻吧……民国那会儿,咱祖上确实有一位大小姐和一个军官私定终身。但按照我父亲的说法,她最终是带着孩子,跟那位军官去了台湾。从此杳无音讯,并没有死在这里。其实这么多年来,咱们这挺安生的……”

老吴的语气从容而淡定。

“最近这几天没什么异样吧?”

“最近都没事,我还特意带着儿子巡了几次夜,没有发现什么情况。”

“哦……”

听完老吴的叙诉,我陷入了沉思。

外面这雨,也终于在雷声过后,畅快的下了起来。在得到佟奕和许薇的许可后,我打算今晚在这里住下。

Peter和小刘本想留下来陪我,但我想了想,还是让他们先回去,明天再来接我。

我在许薇的房间门口架起了一台自制的摄影机,又在客厅处对着落地窗架起另外一台。

上面有我安装的运动目标告警程序。

确定能和我的手机连通后,我便抱了一床薄被,回到了许薇原先的卧室。

水曲柳木床果然舒服,甚至还有些淡淡的清香。

我一边玩着手机,一边注意着周围的动向。

凌晨一点多的时候,我突然看到窗边有一个黑影飘了过去。

这是……来了?

我飞快的推开窗户,外面除了雨滴,什么也没有。

我又打开卧室门,听见走廊另外一头传来微弱的“兹兹……”声,像是什么信号接收不良的样子。

我先看了一下手机上的告警程序,并无异常。确定没什么东西从一楼上来。

“谁在那里?”我喊了一声。

没人回应,这让我不禁泛起了嘀咕。

屋子的隔音效果很好,声音也不像是外面传过来的。

我循着声音慢慢挪过去,正打算开灯。

突然看到一个黑影“嗖”的一下向我扑过来。

我赶紧侧身,黑影裹着一股劲风从我脸旁掠过。

如果慢半秒,我的脸非要受伤不可。

来不及犹豫,我紧跟着追了上去。

那个黑影被逼到角落,突然停住。

我一个急刹,顺手把腰间的爪刀抽了出来。

双方立成对峙之势。

“喵嗷!”

一个闪电从窗边划过,借着电光我终于看清,原来是一只野猫,可能是为了避雨跑进来的。

黑暗中,它眼睛透着绿光,一脸凶狠的盯着我。

我悬着的心放了回去,让开一条路。

那野猫见缝插针,飞快的逃了出去。

稳定了一下情绪,我打开灯,发现自己不知不觉追到了配电房。

有一扇窗户被风吹开了,野猫应该是从这里进来的。

再往角落细看,有一根线缆裸露在柜子外面,像是被什么动物啃过,所以才有漏电的反应,发出了“兹兹”的声音。

我先锁好窗户,又在工具箱里找到一卷电工胶布,把线缆给包好放了回去。

目光所及,看到路由器上有一处很新的手指印,似乎最近有人动过……

这时,我突然发现整个楼的现代化改装比我想象的先进,有智能家居的接口,还有智能音箱。

但为什么这里的人还是用传统的方式操作家电呢?

我皱着眉头思索着。

莫非……

我沿着之前铺设的线缆,来到了一楼客厅。又把笔记本电脑拿出来调测一番,想验证自己的猜想。

三更半夜,不方便打电话。我给嘉琪发了一条微信,拜托她查一下老吴两个儿子的情况。

然后继续敲我的电脑,直到天快亮的时候才勉强眯了一会儿。总算没再出现什么幺蛾子了。

吃过早饭,我又跑到村子里转了一圈,主要想咨询一下老吴他们家和这个大宅子的事情。

没想到人们对老吴和张婶的评价出奇的好,乐于助人,踏实肯干,朴实低调……

可惜两个儿子都混的不怎么样。大儿子生意失败,小儿子为人内向,不喜欢和人接触,名校毕业却找不到工作。由于欠债的原因,大儿子和老吴闹了不小的矛盾。还完欠款后,他选择在南方安家,一直没有回来过。而小儿子一直和老吴夫妇住在一起。

把话题转向老宅的时候,村民们都劝我远离这个宅子,仿佛这个老宅会带来灾祸。

我又找附近邻居,询问前段时间周围有无异样。他们说今年夏天的蚊子好像比往年猖獗。有段时间,晚上总是有嗡嗡嗡的声音,得多买蚊香备着点。

跟村民们聊完,我又收到了嘉琪的信息。里面的主要情况和我实地考察的结果相吻合。

其中有一条细节让我很感兴趣。吴亮在大学里读的是计算机专业,成绩非常不错,还拿过奖学金。

我们一行人又回到了阳台山那个疗养院。

看到我回来后,佟奕和许薇问我调查的结果。

不过我更想跟他们商量一个事情……

“什么?让薇薇住回去?”

“事情没查清楚,这样做太危险了。”

(剩余章节请在“IoT前哨站”公众号中获取)

用树莓派Pico和气体传感器保护厨房

当你在厨房烹饪食物,又跑去刷剧,玩游戏,取快递……

食物正在加热,没人看着,锅烧焦了怎么办?着火了怎么办?

无人看管的烹饪是迄今为止厨房火灾的主要原因。

你可能需要有个东西来帮你盯一下。

这个小东西主要是由树莓派Pico和传感器构成的。

先说开发板,虽然该项目是基于Raspberry Pi Pico构建的,但你可以使用任何与RP2040兼容的电路板创建它。

该项目中使用的Grove-HCHO传感器可检测空气VOCs(挥发性有机化合物)的气体浓度。比如:甲醛和苯。

相关链接:

https://wiki.seeedstudio.com/Grove-HCHO_Sensor/

它是如何工作的?

通过在Raspberry Pi Pico上运行Edge Impulse的Sensor Fusion软件,它可以从气体,温度和湿度传感器读取数据。然后数据通过神经网络模型计算,会判断当前的厨房是否处于安全状态。

是的,要更准确的判断厨房安全状态,你需要更多传感器配合。

Edge Impulse相关链接:

https://studio.edgeimpulse.com/

这里有相关视频来引导你完成软件下载、设置和部署。如果你有兴趣构建自己的厨房监视器,可以照着完成。

经过AI训练,它可以检测厨房的三种状态:空闲,正常烹饪和非正常燃烧。

隐藏在炉子上方风扇罩中的传感器

除了烹饪,从新房子到新家具,也都会存在危害健康的挥发性有机化合物(比如甲醛)。如果你在家里检测到高浓度的挥发性有机化合物,那么你要尽快通风来保证安全。

相关链接:

用Phew在Pico W上构建登录系统

Home Assistant 加 Pico W 改进车库门

树莓派Pico如何用好定时器

在树莓派Pico上跑BASIC程序

Pico SDK — 树莓派Pico起步

树莓派Pico W控制玩具车

树莓派Pico怎么接DHT11温湿度传感器

树莓派Pico W迷你火星车

用Arduino IDE给Pico W开发应用

树莓派Pico上跑TinyML音频分类

用Rust语言来开发树莓派Pico

树莓派Pico的CircuitPython入门

用Pico W做个手机遥控的车库门

太阳能驱动的Pico W在线气象站

Pico W搭网站并显示访问者IP

通过MicroPython控制Pico W上的板载LED

基于树莓派Pico的机器学习

在树莓派Pico上运行“毁灭战士”

用树莓派Pico制作的无人机PiWings

如何让树莓派Pico支持LoRaWAN

长者为你开启树莓派Pico的I/O世界

在树莓派Pico上播放《Bad Apple》

在树莓派Pico上用BBC Micro模拟器玩游戏

树莓派能跑Stable Diffusion了

Stable Diffusion是一种文本到图像生成的大型深度学习模型,它可以根据文本的描述生成详细的图像,也可以用于其他任务,如图像修复、图像扩展、图像翻译等。

它是基于潜在扩散模型(Latent Diffusion Model)的一种变体,通过对图像添加和去除噪声来训练和生成图像。

该模型由Stability AI和LAION联合开发,目前是一个开源的AI平台,有很多用户和开发者贡献了不同的预训练模型和插件。

一般情况下,跑Stable Diffusion需要的配置:最好是有英伟达(Nvidia)的独立显卡,显存不少于4GB,推荐8GB以上;内存8GB以上,推荐16GB或以上;硬盘40GB以上的可用空间,最好是固态硬盘;操作系统支持Windows 10/11,macOS(仅限Apple Silicon或更新版本),Linux等。

但最近有人在树莓派Zero 2上运行Stable Diffusion了,而树莓派 Zero 2 只是内存512MB 的单板计算机。

它的配置和规格如下:

  • 处理器:Broadcom BCM2710A1,四核64位SoC(Arm Cortex-A53 @ 1GHz)
  • 内存:512MB LPDDR2
  • 连接性:2.4GHz IEEE 802.11b/g/n无线局域网,蓝牙4.2,BLE,带天线的屏蔽罩
  • 接口:1 × USB 2.0 OTG接口
  • HAT兼容的40针I/O头插座(未焊接)
  • microSD卡插槽
  • Mini HDMI端口
  • CSI-2摄像头连接器
  • 视频:HDMI接口
  • 复合的视频和复位引脚焊点
  • 多媒体:H.264, MPEG-4解码(1080p30)
  • H.264编码(1080p30)
  • OpenGL ES 1.1, 2.0图形
  • 输入电源:5V DC 2.5A
  • 工作温度:-20°C to +70°C

Raspberry Pi Zero 2 W的尺寸是65mm × 30mm,与原来的Raspberry Pi Zero一样。它的性能比原来的单核Raspberry Pi Zero提高了五倍。一般用于智能家居、物联网等项目。

为了让更多低配置的计算机也能用Stable Diffusion出图。

一个名为vitoplantamura的开发者决定写一个超小的推理库,让260MB内存的单板机也能将Stable Diffusion跑起来。终于,他成功了。

他用C++开发的OnnxStream,是一个能够在低内存设备上运行 Stable Diffusion 的推理库,它通过分离推理引擎和权重提供器,以及量化等技术,完成了在树莓派 Zero 2 上生成图像的挑战。

与微软的OnnxStream 相比,vitoplantamura的OnnxStream 只需要消耗 1/55 的内存就可以达到同样的效果,但(在 CPU 上的)速度只比前者慢 0.5-2 倍。

虽然运行速度较慢,但它却是大模型在更小、更有限的设备上部署的崭新尝试。

相关源码:

https://github.com/vitoplantamura/OnnxStream

用Arduino做一个自动割草机

这个项目中,我们将用Arduino制作一个自动割草机。该机器可以自动修剪院子里长高的草。如果有障碍物,它会自动改变方向,有助于减少人力。

本文提供了项目的基本概述,以及制作Arduino割草机器人所需的组件。提供了电路原理图和Arduino源代码,以便简化组装和编程过程。

注意:这个项目不是玩具,它包含锋利的刀片。如果不小心使用,可能会造成严重的伤害。不要让它无人看管,刀片应正确固定。操作前检查一下。

材料清单

我们需要以下组件:

1、 Arduino UNO
2、 L293D电机驱动盾
3、 超声波传感器HC-SR04
4、 超声波传感器外壳/支架
6、 直流减速电机 x4
7、 BLDC电机100KV
8、 舵机SG-90
9、 ESC模块
10、舵机测试仪
11、3针滑动开关
12、X型十字支架
13、机器人底盘
14、11.1V锂电池

什么是割草机器人(割草机)?

割草机器人是一种用于自动修剪和维护草坪的机器人设备。这些机器人使用传感器和算法来导航和修剪草坪,并且可以根据草坪的生长速度或特定的时间表来编程修剪草坪。一些割草机器人还配备了诸如障碍物检测、防盗保护和通过智能手机应用程序远程控制等功能。它们近年来越来越受欢迎,因为可以节省割草的时间和精力。

电路和连接

源代码/程序

AFMotor Library:
https://github.com/adafruit/Adafruit-Motor-Shield-library

NewPing Library:
https://github.com/microflo/NewPing

需要编译到Arduino UNO开发板中的代码:

#include <AFMotor.h>  
#include <NewPing.h>
#include <Servo.h> 
 
#define TRIG_PIN A0 
#define ECHO_PIN A1 
#define MAX_DISTANCE 200 
#define MAX_SPEED 190 
#define MAX_SPEED_OFFSET 20
 
NewPing sonar(TRIG_PIN, ECHO_PIN, MAX_DISTANCE); 
 
AF_DCMotor motor1(1, MOTOR12_1KHZ); 
AF_DCMotor motor2(2, MOTOR12_1KHZ);
AF_DCMotor motor3(3, MOTOR34_1KHZ);
AF_DCMotor motor4(4, MOTOR34_1KHZ);
Servo myservo;   
 
boolean goesForward=false;
int distance = 100;
int speedSet = 0;
 
void setup() {
 
  myservo.attach(10);  
  myservo.write(115); 
  delay(2000);
  distance = readPing();
  delay(100);
  distance = readPing();
  delay(100);
  distance = readPing();
  delay(100);
  distance = readPing();
  delay(100);
}
 
void loop() {
 int distanceR = 0;
 int distanceL =  0;
 delay(40);
 
 if(distance<=15)
 {
  moveStop();
  delay(100);
  moveBackward();
  delay(300);
  moveStop();
  delay(200);
  distanceR = lookRight();
  delay(200);
  distanceL = lookLeft();
  delay(200);
 
  if(distanceR>=distanceL)
  {
    turnRight();
    moveStop();
  }else
  {
    turnLeft();
    moveStop();
  }
 }else
 {
  moveForward();
 }
 distance = readPing();
}
 
int lookRight()
{
    myservo.write(50); 
    delay(500);
    int distance = readPing();
    delay(100);
    myservo.write(115); 
    return distance;
}
 
int lookLeft()
{
    myservo.write(170); 
    delay(500);
    int distance = readPing();
    delay(100);
    myservo.write(115); 
    return distance;
    delay(100);
}
 
int readPing() { 
  delay(70);
  int cm = sonar.ping_cm();
  if(cm==0)
  {
    cm = 250;
  }
  return cm;
}
 
void moveStop() {
  motor1.run(RELEASE); 
  motor2.run(RELEASE);
  motor3.run(RELEASE);
  motor4.run(RELEASE);
  } 
  
void moveForward() {
 
 if(!goesForward)
  {
    goesForward=true;
    motor1.run(FORWARD);      
    motor2.run(FORWARD);
    motor3.run(FORWARD); 
    motor4.run(FORWARD);     
   for (speedSet = 0; speedSet < MAX_SPEED; speedSet +=2) 
   {
    motor1.setSpeed(speedSet);
    motor2.setSpeed(speedSet);
    motor3.setSpeed(speedSet);
    motor4.setSpeed(speedSet);
    delay(5);
   }
  }
}
 
void moveBackward() {
    goesForward=false;
    motor1.run(BACKWARD);      
    motor2.run(BACKWARD);
    motor3.run(BACKWARD);
    motor4.run(BACKWARD);  
  for (speedSet = 0; speedSet < MAX_SPEED; speedSet +=2) 
  {
    motor1.setSpeed(speedSet);
    motor2.setSpeed(speedSet);
    motor3.setSpeed(speedSet);
    motor4.setSpeed(speedSet);
    delay(5);
  }
}  
 
void turnRight() {
  motor1.run(FORWARD);
  motor2.run(FORWARD);
  motor3.run(BACKWARD);
  motor4.run(BACKWARD);     
  delay(500);
  motor1.run(FORWARD);      
  motor2.run(FORWARD);
  motor3.run(FORWARD);
  motor4.run(FORWARD);      
} 
 
void turnLeft() {
  motor1.run(BACKWARD);     
  motor2.run(BACKWARD);  
  motor3.run(FORWARD);
  motor4.run(FORWARD);   
  delay(500);
  motor1.run(FORWARD);     
  motor2.run(FORWARD);
  motor3.run(FORWARD);
  motor4.run(FORWARD);
}  

测试

上传代码后,你可以把机器人带到野外,也许在高草地区。高草地区可以是一个很好的测试选择。

打开机器人上的开关,确保电源为Arduino板提供正确的电压,并且所有组件都正确连接。通过手动控制机器人的运动来测试机器人的电机,确保机器人运动平稳准确。

测试机器人的传感器,在其路径上放置障碍物,并确保能避开它们。此外,检查传感器的范围和灵敏度,以确保机器人可以检测到草的存在。

Arduino Uno R4发售:配置飙升,芯片大换

Arduino 在 2010 年推出了 Uno R3之后,一直没有对这个型号做更新。而这个型号也历久弥坚,流行了很久。

十三年过去了,他们突然发了一个升级型号 —— Arduino Uno R4。和老款相比,新款在算力、内存、网络连接方面都做了大幅改善。

Arduino UNO R4 具有与R3相似的设计。不过UNO R4没再用ATmega328P的芯片。而是改成了ARM Cortex-M4,48兆赫工作频率,有32 KB的RAM和256 KB的闪存。可以用5V的电源供电。

该型号共有两个版本,分别是Minima版和Wi-Fi版。两个版本芯片都是ARM Cortex-M4,不同点主要在于:

  • 无线连接:Arduino UNO R4 WiFi 集成了一个 ESP32-S3 模块,可以支持 Wi-Fi 和蓝牙连接。Arduino UNO R4 Minima 没有无线连接功能,但是可以通过 Qwiic 连接器接入其他的无线模块。
  • LED 矩阵:Arduino UNO R4 WiFi 有一个内置的 12×8 LED 矩阵,可以用来显示图形或文字。Arduino UNO R4 Minima 没有 LED 矩阵。
  • VRTC 和 OFF 引脚:Arduino UNO R4 WiFi 有一个 VRTC 引脚,可以用来给 ESP32-S3 模块提供电源,以便在低功耗模式下保持 Wi-Fi 连接。它还有一个 OFF 引脚,可以用来关闭 ESP32-S3 模块,以节省电量。Arduino UNO R4 Minima 没有这两个引脚。

WI-FI版本外观

Wi-Fi版本售价信息

Minima版本外观

Minima版本售价信息

UNO R4和UNO R3参数对比

由于其强大的设计和可靠的性能,Arduino UNO R4会是物联网爱好者不容错过的一款开发板,也很适合Arduino老玩家用来升级他们的项目。

微软开源的物联网教程

主讲物联网通用知识、传感器数据收集、执行器响应处理、硬件联网方式、位置追踪、语音识别等基础知识。

通过开发植物监控、浇水系统、车辆跟踪、声控烹饪计时器等多个项目,带你了解物联网的实际使用。

课程中的多个项目,将打通食物从农场,再到餐桌的完整处理流程,其中涉及农业、物流、制造、零售、消费者等多个产业,覆盖了物联网设备在当下主流行业的应用。

在万物互联的时代,物联网这一概念也开始普及到千家万户,古代人们所畅想的隔空控物,与物对话,在随着声控硬件的推广下,也慢慢让这一理念得以实现,成为常态。

而作为技术人员的我们,为了让自己在职场中更加不可替代,便得先人一步,看到未来,提前做好规划与打算。

我认为,物联网这一行业,结合现有的各个大语言模型,未来在智能家居等行业,定会诞生很多有趣的应用与产品。

GitHub:

https://github.com/microsoft/IoT-For-Beginners

flutter包在内地安装不了怎么办?

一般我们在flutter pub get安装包的时候,经常会遇到如下错误。

Got socket error trying to find package coverage at http://pub.dartlang.org.

或者

Got socket error trying to find package flame at https://pub.dev.

你打开浏览器访问pub.dev的时候,又可以正常访问。

这个咋解决呢?

如果你是Windows用户,你可以在Powershell的界面下运行:

setx PUB_HOSTED_URL “https://mirrors.cloud.tencent.com/dart-pub”
setx FLUTTER_STORAGE_BASE_URL “https://mirrors.cloud.tencent.com/flutter”

这两条命令。

如果你是Mac用户,你可以在命令行下运行:

$ export PUB_HOSTED_URL=https://mirrors.cloud.tencent.com/dart-pub
$ export FLUTTER_STORAGE_BASE_URL=https://mirrors.cloud.tencent.com/flutter

之前有教程说改成这样:

setx PUB_HOSTED_URL “https://pub.flutter-io.cn”
setx FLUTTER_STORAGE_BASE_URL “https://storage.flutter-io.cn”

但实际操作是无效的,现在还不知道怎么回事。

用Pi-Timolo和树莓派做一个夜视摄像头

安德鲁·格雷戈里 (Andrew Gregory) 发现,后花园的狗经常深夜叫唤。

于是他用树莓派做了一个夜间摄像头,来拍下那个不断引发狗叫的神秘访客。

要放在室外,少不了一个防雨且有一定强度的容器,这里他用到了几块厚木板。

市场上有一系列适用于 Raspberry Pi 的摄像头,比如:Pi Camera Module 3、Raspberry Pi Global Shutter Camera、Raspberry Pi High Quality Camera 和各种热敏模块。

但当访客在夜间到来,最好用的是 Pimoroni 等厂商提供的夜视摄像头。

关于树莓派的选择,作者用到了Raspberry Pi Zero W,比较轻便,兼容性也很好。

这个摄像头设在后花园,距离足够近,可以通过家庭 Wi-Fi 网络即可获取视频流。

但作者不想拉电源线,所以需要电池供电。

事后看来,最好是选择 USB 电池组——这种电池组可以即插即用到任何设备,并具有一定程度的保护作用。

作者选择了 1200mAh,3.7 V LiPo 电池,它裸露且易碎,无法直接连接到 Raspberry Pi Zero W。所以需要给 Raspberry Pi Zero 添加一个 LiPo SHIM(这需要一些焊接)。

本文提到的树莓派电池连接板,相关地址:

把供电模块、摄像头、树莓派都接好后的状态,差不多是这样。

装好系统,通电联网,登录系统执行如下命令进行测试:

raspistill -v -o test.jpg

如果一切顺利,你会看到一个图像在屏幕上闪了一两秒钟,然后颜色会变暗。那是因为夜视摄像头模块使用红外线(大多数摄像头模块会过滤掉这层光谱)。

作者在这里使用的软件包为 Pi-Timolo(Raspberry Pi Time、Motion 和 Low light),由 Claude Pageau 开发。 

可以执行如下命令安装(最好是update系统以后):

curl -L https://raw.github.com/pageauc/pi-timolo/master/source/pi-timolo-install.sh | bash

然后到一个设置界面,自行操作即可。

不过与 Raspberry Pi Camera Module 3 的 12MP 相比,夜视摄像头上的 5MP 传感器还是有些很小,因此作者很想找到一些红外 LED 并制作自己的摄像头模块。

来自:HackSpace 第 66 期