首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Google 工程师:教你用树莓派 + Arduino + TensorFlow 搭建图像识别小车

掌握了这两样工具的工具(元工具),你感觉网上遍地是趁手的兵器。 上周在公司内部编程培训时,有一句话深得我心:我们是软件工程师,不是程序员。我们的工作不是写程序,而是合理使用工具解决问题。...和原博客不同的是,制作过程中我加入了Arduino作为机械总控,也了解了Arduino和树莓派对话的方法(串口通信)。期间用到了许多有用的技能和工具,在这里整理一下,欢迎同好们留言交流!...你看到的各种电子部件、探头、焊接、面包板,都是在和GPIO打交道。你需要了解基本的电路知识,也需要知道它们在单片机上的排布。...python代码在这里,用到了我自己写的库,用来检测键盘按键。这个库将单次按键匹配到前进/后退/转/停止等行为;但我希望实现的是长按键前进/后退/转,不按键时停止。...家里的电视机、音响、空调遥控都可以用,你只需要在使用前匹配好按键和对应的码。我在代码里define的一堆KEY只适用于我的遥控器。你可以用这个代码来获得键码。

3.1K111

Arduino 机器学习实战入门(下)

Arduino板运行小应用程序(也称为示意图),这些程序是由.ino格式的Arduino源代码编译而成,并使用Arduino IDE或Arduino Create在板上编程。...在Arduino IDE中,打开串口绘图仪工具>串口绘图仪 如果出现主板不可用的错误,请重新选择端口: 工具>端口>端口名(Arduino Nano 33 BLE) 拿起板子,练习你的击打和弯曲动作 您将只看到一秒钟窗口的示例...一手拿起板子(以后拿起板子会触发采样) 在Arduino IDE中,打开串口监控工具>串口监控 如果出现主板不可用的错误,请重新选择端口: 工具>端口>端口名(Arduino Nano 33 BLE)...用手拿着板做一个出拳的手势(做的时候要小心!)...Colab下载的model.h文件: 1.在Arduino IDE中打开imu_classifier.ino。

3.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【物联网】数字交响:红外炫遥控,蜂鸣躁动,干簧管传感演绎科技交响曲

    深入了解干簧管传感器实验原理: 系统学习干簧管传感器的基本结构和工作原理; 分析干簧管在不同环境条件下的灵敏度和响应特性; 掌握干簧管传感器在电子设备中的应用及其优势。...3.3 编译 使用Arduino开发环境对程序进行编译,确保其无误并符合实验需求。 3.4 上传至Arduino Uno板 通过USB数据线将编译后的程序上传至Arduino Uno主板。...实验结果 按下遥控器的“CH-”键时,Arduino Uno主板上的第13针LED将亮起,而按下其他键则指示灯熄灭。 按下遥控CH-,灯亮起 按下遥控其他键,灯熄灭 5....3.3 编译 使用Arduino开发环境对程序进行编译,确保其无误并符合实验需求。 3.4 上传至Arduino Uno板 通过USB数据线将编译后的程序上传至Arduino Uno主板。...3.3 编译 使用Arduino开发环境对程序进行编译,确保其无误并符合实验需求。 3.4 上传至Arduino Uno板 通过USB数据线将编译后的程序上传至Arduino Uno主板。

    20310

    简单红外线解码

    重点是这个人的博客,好厉害 我终于在09年的时候8月份找到了 打开以后就是老哥最近对一个老式计算机的X光照片 这个是红外线这个篇文章 如何发送 该红外远程库由两部分组成:IRsend发送IR远程数据包...发送缓冲区从第一个标记的持续时间开始,而接收缓冲区从第一个标记之前的间隙空间的持续时间开始。格式是不同的,因为我认为对于库测量传输之间的间隙有用,但对于库在传输时提供这些间隙没有帮助。...更详细地讲,每次TIMER1溢出时都会调用接收器的中断代码,该代码设置为在50微秒后发生。在每次中断时,都会检查输入状态,并增加计时器计数器。...添加#define DEBUG到代码的开头,以在串行控制台上启用调试输出。您将需要删除.o文件和/或重新启动IDE以强制重新编译。 传输问题 如果发送失败,请首先确保您的IR LED实际正在发送。...当接收到红外线时,Arduino引脚13上的LED指示灯将闪烁。如果没有,则可能是硬件问题。 如果代码已收到但无法解码,请确保代码在受支持的协议之一中。

    2.3K51

    FlySky+A8S(SBUS接收机)+ESP8266控制大疆Tello无人机.准备

    当我有了一个航模遥控器以后,我就觉得有必要和我的Tello联姻~ I6X 那我们的主角就是这样滴! 得益于大疆对TT的开放,我们可以使用固定的协议来完成对TT的控制。...在SDK里面说过了连接方式了 而且还可以接收Tello的状态,所以这个信息也可以回传 因为Tello的图传也是WIFI的,然后控制它也是WIFI连接,所以图传现在就先放一下,后期可以会桥接吧。...https://github.com/Cleric-K/FlySkyRxFirmwareRssiMod 但是有一个项目可以让接收机有回传信号强度的能力,源码也给了。我研究一下自己写个固件。...用软件串口倒是也行,不过我找不到了。。。 就一个硬件串口 连接的示意图 但是可以使用普通的引脚模拟串口。...好了,我们在编码之前需要做一个准备,要准备一个解码IBUS信号的库~ https://github.com/bmellink/IBusBM 开源的位置 Arduino内直接下载安装 该库支持基于 AVR

    3K20

    随讲单片机与Arduino

    在个人计算机(PC)上这些部份被分成若干块芯片,安装在一个被称之为主板的印刷线路板上。...Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,收录进微控制器。...基于Arduino的项目,可以只包含Arduino,还可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。...由于项目性质不同,其留给电子部分的体积和重量也大相径庭。 以下就是我认为最常见的几种开发板。...Arduino IDE基本的功能区已经在上面标示出来了,上图大部分的白色区域就是代码的编辑区,用来输入代码的。注意,输入代码时,要切换到英文输入法的模式。

    1.4K20

    VsCode设置ESP32工具链+刨根问底点灯

    unplash ---- 今天教大家ESP32在vscode上面的配置,以及点灯时的具体引脚定义....本文的指导来源,我其实比较气的.先英文文章才中文 而且中文文章有错误,你得去看英文文章.以英文为准 https://github.com/espressif/vscode-esp-idf-extension...通过将ESP-IDF示例复制到ESP-IDF中来快速进行原型制作:显示ESP-IDF示例项目。 使用ESP-IDF应用程序级跟踪库中的应用程序跟踪时,如ESP-IDF应用程序级跟踪示例中所示。...这个地方是编译 ? 900多文件,脑瓜子嗡嗡得 ? 可以看带先是生成一个elf可以执行得文件 然后转换成bin文件 ? 提示这个,是 ? 有错误,烧录失败. 可能是配置不对 ?.../api-reference/peripherals/gpio.html 在乐鑫的文档内部我找到了设置GPIO的函数 这个未知的函数,用vscode的代码引擎找到了 ?

    3.9K10

    家用万兆网络实践:紧凑型家用服务器静音化改造(二)

    我当时选择了经典的黑色“猫扇”来进行替换,效果相当不错:设备在高负载时只有轻微噪音,平时更是安静得几乎听不到声音。 这次的改造,我依然选择了猫扇,具体型号是经典配色的 NF-A8 。...这个方案是在 Reddit 用户executivul[10] 在2017年提出的方案(Arduino nano 实现代码[11])基础上优化而来,通过简化硬件设计,采用软件方案来解决问题。...由于我在硬件方面还算是个新手,我 fork 了 zhaoyingpu 的项目 soulteary/hpe-gen10-fan-proxy[16],增补了相关资料。...软件部分:Arduino 控制程序的刷写 参考的原始项目和开发板的网店店铺对于开发板的软件使用说明都比较有限。不过经过一番研究,我找到了最简单的使用方法。...号位需要制作特殊的 “Loop” 线与 6 号位连通) 制作主板风扇连接线 完成后和原厂版本对比,除了特殊的 “Loop” 线外,基本一致。

    9510

    DIY天线自动追踪系统OpenATS

    经过各方面查找资料,最后确定用开源的硬件平台Arduino来完成这个项目,然后更多的困难在等着我,之前从没有接触过Arduino,开始学习Arduino编程,还好是基于C语言的还比较好上手的。...为了做一个更完美的天线,想到了很多事情。加入了手动控制功能,这样可以更灵活地来控制我们的天线,让我们的天线更加完美。...录制视频时,代码跟现在代码不一样,所以视频中的串口窗口内命令跟现在不一样。 在长时间运转后,天线可能会由于电机的丢步,造成的精度不准,这时候可以输入命令来进行校准。...所以如何来找出正北方向是个难题,本人想用太阳在一天中本地时间12点时的方向为正南来确定。注意不是北京时间是当前经度的时间。 可以用高精度的GPS来获取精准的本地时间,再根据太阳投影方法确定正北方向。...在实际建好后,还需要仔细调校,程序、机械装置的延迟,我们可以将上位机的系统时间提前几秒来补偿。具体根据多次试验来调试自己天线的最佳状态。还可以适当降低加速度参数,提前系统时间来让天线运行起来更平滑。

    3.8K130

    ESP8266上的MicroPython入门(1)

    其实这里我并不知道要这么说,因为不谈应用场景得话,都是片面之词.所以我会搭配一些应用场景来说明. 1.AT指令得开发模式.其实这个芯片,设计之初就是为了给传统芯片增加连接能力用得.ESP芯片搭上了物联网得这个快车...我以自己现在得学识其实是说不出个所以然得.如果非要说,我觉得就是wifi这种连接方式在很多指标是取得了一种平衡.比如传输速率,容量,开发得门槛.以及一些高层应用,快速组网等.当然也不能吹得过头,总之就是还得看自己得需求来选择...---- 第一种就是传统单片机得开发模式,写一个死循环.加中断,或使用状态机,回调函数得这些个开发模式来开发.优点是最大得灵活性,最好得性能.但是随之带来得是开发得难度得增加(因为要事无巨细得管理一切...开发流程是这样得.首先要搭建一个开发环境.官方得做法是.在win系统上开以一个Linux的虚拟机,里面有一套GCC的编译器以及写好的Makfile文件(这个说话不对),就是要在编辑器里面写好程序->把这套程序来打包成一个格式为...轻量级 Lua语言的官方版本只包括一个精简的核心和最基本的库。这使得Lua体积小、启动速度快,从而适合嵌入在别的程序里。

    1.3K30

    家用万兆网络实践:紧凑型家用服务器静音化改造(二)

    我当时选择了经典的黑色“猫扇”来进行替换,效果相当不错:设备在高负载时只有轻微噪音,平时更是安静得几乎听不到声音。这次的改造,我依然选择了猫扇,具体型号是经典配色的 NF-A8 。...不过在动手改造前,我们还是得先了解下新旧风扇的性能差异。...这个方案是在 Reddit 用户executivul 在2017年提出的方案(Arduino nano 实现代码)基础上优化而来,通过简化硬件设计,采用软件方案来解决问题。...由于我在硬件方面还算是个新手,我 fork 了 zhaoyingpu 的项目 soulteary/hpe-gen10-fan-proxy,增补了相关资料。...软件部分:Arduino 控制程序的刷写参考的原始项目和开发板的网店店铺对于开发板的软件使用说明都比较有限。不过经过一番研究,我找到了最简单的使用方法。

    12110

    手把手教你DIY尼康ML-L3红外遥控器

    项目介绍 ML-L3是用于尼康部分型号相机的无线红外遥控器,可以通过红外方式来控制快门的释放,支持B门拍摄。官方售价100RMB左右,山寨版售价10RMB左右。...虽然也能实现基本的遥控功能,但是功能还是比较单一,如不能实现定时拍摄,即用来拍摄制作延时视频的素材。...本篇文章介绍如何通过Arduino、MCU或FPGA来控制红外发射器,产生快门指令从而实现无线遥控快门的功能。 ?...Arduino开发板,我手头上有的是Circuit Playground Express这款开发板,板载一对红外发射接收头,和两路按键,对于我们的功能已经是足够用了。...当然,也可以使用手机上的遥控器来实现这个功能。 代码获取 以上代码已经开源在Github和Gitee平台,地址如下。

    71910

    机器人控制器编程课程-教案03-进阶

    编译程序并下载 ? 下载成功! ---- C语言编程官方案例 1.基础知识 Basics Analog Read Serial:读取电位计,将其状态输出到Arduino串行口监视器。...Keyboard Message:按下按钮时发送文本字符串。 Keyboard Reprogram:在Arduino IDE中打开一个新窗口,并使用简单的闪烁程序重新编程Leonardo。...Starterkit和BasicKit 套件中包含的Project Book中提供 了StarterKit示例的教程,如果您购买了BasicKit,将能够在Project Ignite上在线访问项目。...温度感应器 使用TMP102测量温度 按钮 监视按钮并在ROS中发布其状态 用rosserial_arduino来制作CMake 本教程介绍如何将CMake构建系统与rosserial_arduino...伺服控制器示例 使用rosserial和Arduino控制R / C伺服的教程 IR Ranger教程 使用带有rosserial和Arduino的IR Ranger SRF08超声波传感器 在本教程中

    2.8K21

    用Rust实现Brainfuck的JIT编译器

    但是,此代码在底层如何工作?我认为并非所有人都能回答这个问题,我也是。我可以用Haskell,Erlang,Go 等高级编程语言编写代码,但是在它们编译后我并不知道它在底层是如何工作的。...正如我们在 Wikipedia 中可以看到的: 中央处理器(CPU)是计算机中的硬件,它通过执行系统的基本算术,逻辑和输入/输出操作来执行计算机程序的指令。 好的,CPU 会执行一些运算。...在完成该调用之后,将 60 写入 rax,这意味着我们要调用 sys_exit 退出程序,且退出码为 0。...在大多数系统上,栈和堆都配置为不允许执行,因为如果你的代码跳转到了栈或堆,则意味着程序发生了很大的错误,这是由操作系统的内存结构决定的。..., Part I)第一部分中,他提到了在运行时被转换的函数,因此不需要编译并执行系统。

    88910

    pyMagic:用python控制的Geek入门神器

    最近一直在跟国外的micropython项目,这个项目是由剑桥大学的理论物理学家(theoretical physicist)Damien George发起的,一个用python语言来控制硬件的项目。...后期看到了micropython在Kickstarter上进行筹款,正好满足我这方面的想法,所以就一直在跟。...Mircopython主板+FPC转接板 0x02 了解 pyMagic为一块基于STM32F405RG微控制器运行Python语言解释器的硬件平台。与Arduino类似,但pyMagic更为强大。...0x04 使用pyMagic的方式不只一种 在第二节里面提到了pyMagic内置python3的解释器,也就是能够随时解释,也就是说我们可以写一行代码就可以看到一行代码的效果咯。...,还可以读取管脚电压,播放歌曲,和其他设备连网等,当我们在碰到些硬件问题时,能够迅速解决提高效率。

    1.4K50

    靠编程赚钱的7个方法:普通程序员最难

    在编程的初期,你需要不断地支出:你得订阅如Treehouse的服务去学习编程;如果你想与现实世界互动的话,你得购买Arduino;如果你想要(并且是应该的)展示自己的作品,获得更好的工作机会的话,你得有一个网站...当我们年轻程序员在做一个项目的时候,通常会幻想自己的项目将因其伟大的特性而成为世界上最好的产品之一,而问题在于我们没法靠自己完成所有的事情。而这就是开源的目标和精粹。...不过,我不得不承认,我并没有贡献过很多开源项目,我有点惭愧,不过我希望在发了这篇博客以后,我能够更加努力,这样我才能有真正值得炫耀的东西,我才能更善于合作,而合作正是我想在工作中努力提高的技能。...3、制作应用程序 正如我以前所描述的那样,我现已经在着手做一个Android应用程序,细节方面我不会说太多,因为做一个应用程序算是一件相对容易的事情,而且是赚钱(广告或app内购买)的一个快速又简便的方法...你可能已经猜到了,他不是一个编程高手,所以你也没有必要是,你只需要了解基本知识,就可以“传道”了。 同样的,除了可以赚钱,这也有助于你成为更有经验的程序员。

    3.3K50

    写给前端的零基础编译原理科普

    介绍一下自己,大家可以叫我神光,17 年毕业,目前就职于阿里高德的跨端架构组,做前端工程化相关的建设,包括 builder 和 ide 等。 大家也可以在知乎-神说要有光[1]关注我。...分词是按照状态机来分的,有限状态机 DFA,这个是干啥的,为啥分词需要它,我知道你肯定有疑问。...ll 的方式要确定组装的是啥 ast 节点要往下看几个,根据要看几个来确定组装的是什么就分别是 LL(1),LL(2)等算法。...不管是解释 ast 也好,还是转成字节码再解释也好,效率都不会特别高,因为是用别的高级语言来执行当前语言的代码,所以要提高效率还是得编译成机器代码,这种运行时编译就是 JIT 编译器,编译是耗时的,所以也不是啥代码都...语言级别的 parser 细节很多,还是得找一个来 debug 看。不过我觉得没太大必要,一般也就写个 html parser,要是语言的,可以用 antlr 生成。

    96130

    编程赚钱的7个方法

    在编程的初期,你需要不断地支出:你得订阅如Treehouse的服务去学习编程;如果你想与现实世界互动的话,你得购买Arduino;如果你想要(并且是应该的)展示自己的作品,获得更好的工作机会的话,你得有一个网站...当我们年轻程序员在做一个项目的时候,通常会幻想自己的项目将因其伟大的特性而成为世界上最好的产品之一,而问题在于我们没法靠自己完成所有的事情。而这就是开源的目标和精粹。...不过,我不得不承认,我并没有贡献过很多开源项目,我有点惭愧,不过我希望在发了这篇博客以后,我能够更加努力,这样我才能有真正值得炫耀的东西,我才能更善于合作,而合作正是我想在工作中努力提高的技能。...3.制作应用程序   正如我以前所描述的那样,我现已经在着手做一个Android应用程序,细节方面我不会说太多,因为做一个应用程序算是一件相对容易的事情,而且是赚钱(广告或app内购买)的一个快速又简便的方法...你可能已经猜到了,他不是一个编程高手,所以你也没有必要是,你只需要了解基本知识,就可以“传道”了。   同样的,除了可以赚钱,这也有助于你成为更有经验的程序员。

    2.8K60

    干货教程:教你DIY一个萌蠢可爱的机器鸟

    这个名叫RoboBrrd的鸟形机器人项目来自RobotGrrl,原文发布于Makezine。Makezine对本项目的难度评级为“适中”,制造耗时估计在3-20小时之间。...首先做一个基本的三角形(4)。 剪短一根雪糕棒,然后在靠近直边的一段戳一个孔(5),要小心不要把木头戳分叉。如果不小心戳坏了,要重新来过哦。...这里需要提醒一下,本文原作者在制作过程中发现伺服电动机与TLC5940库同时使用时会发生错误。当你决定如何控制LED时需要考虑一下这点。...当电动机能够在适当的范伟内自由活动时(可以通过声音和电动机的散热来判断),记下此时的边界。后面我们设计RoboBrrd动作的时候这些数据会非常重要。对每个伺服电动机重复这个步骤。...第二十一步:基本动作编程 在赋予这个“鸟人”更多复杂表情和动作之前,首先我们要学会如何让它有一些基本的动作。下面给出一些动作例子: 张嘴:将嘴部从初始位置移动到全部张开的位置。

    1.4K60

    国外DIY牛人教你做Wifi机器人(最全教程)

    2.2 路由器 我已经改装了我的WRT54GL,现在它有2个串口和一个1GB的SD卡(用来充当1GB的硬盘)。在本项目中其实没有用到这个SD卡,但用到了一个串口。...我花了相当长的一段时间来调试和解决这个问题,不过最终还是决定放弃它。此外,我还发现输出电压是难以预测的,因为输出还要驱动液晶显示屏之类的集成外设。 PIC和Arduino微控制器平台的源代码我都有。...这样,我就可以用我已有的廉价连接器将它们连接起来,并且比较容易做一个分配连接器(splitter connector)来进行功率测量。这些完全充好电的电池串联连接时总电压约为16V。...我选择的摄像头是Panasonic BL-C1A,它基本上算是最便宜的有线网络摄像头,其驱动软件也只能用在Windows系统上,不过已经完全够用了。...而我之所以没把LT1083 7.5A稳压器也放在盒子里,是因为它是在我烧掉第一块控制板后新加的一个东西,装在车子底部最省事。 当路由器启动时,装在项目盒背面的一个发光二级管就开始发出红光。

    2.4K50
    领券