DF创客周刊第74期:探索迷你自动驾驶项目与SPI闪存音频播放

发表时间: 2024-03-08 15:20

社区公众号记录每周值得分享的创客相关内容,每周五发布~

内容开源,欢迎投稿或推荐相关内容。

投稿邮箱:MakerCommunity@outlook.com

图片&视频

JetCar迷你自动驾驶项目

JetCar是一个基于NVIDIA Jetson Nano开发的迷你自动驾驶汽车项目。它能够在街道地图上自主导航,并遵循停止标志和方向箭头的指示。该项目适合有一定经验的创客,提供完整的指导和需要超过8天的制作时间。

JetCar的硬件组件包括Adafruit 16通道PWM/Servo 扩展板、Jetson Nano开发套件、散热风扇、WiFi车载设备、Molex WiFi天线、Adafruit PiOLED显示屏、齿轮电机、H桥电路板、摄像头、伺服马达、车轮和电池充电宝等。软件方面,使用了Fusion 360、Microsoft Visual Studio、Google Colab、NVIDIA Jetpack SDK和Jupyter Notebook等工具。

JetCar通过机器学习技术,能够识别街道上的方向箭头、停止文字和停止线。它的模型架构是U-Net,可以在固件中处理生成的直观类别图像,该固件用Python编写并通过Jupyter notebook控制。用户可以通过WiFi从主机电脑连接到汽车,并简单地请求下一个十字路口的方向变化。但它只会在街道上的方向箭头不限制方向时转弯。

该项目包括机械设计、电子设计、固件和数据准备、模型训练以及街道地图生成的工具。所有源代码和二进制文件均已在GitHub上发布,文档详细描述了所有部件的制作过程,旨在帮助任何人在家中制作这款小车,尝试操作并进行改造。

GitHub地址:
https://github.com/StefansAI/JetCar

来源:
https://www.hackster.io/stefanw1/jetcar-the-mini-self-driving-car-project-f83bc8

用微控制器播放SPI闪存中的音频

这个项目展示了如何利用微控制器的PWM输出来驱动扬声器,并播放存储在SPI闪存芯片中的音频。

通过将音频编码为8位分辨率,以8 kHz的采样率,32 Mb(4 MB)的内存足以存储大约8分钟的原始音频。项目中使用了一个价格大约2美元的W25Q32断路板。与使用SD卡的类似项目相比,这个方法对于简单项目来说更有利,因为它只需要增加一个便宜的组件就能实现。

软件:

  • Arduino代码
  • AVR64DD32代码(更高级的8位AVR微控制器)

硬件:

  • 微控制器
  • SPI闪存芯片(W25Q32)
  • 扬声器
  • LM386音频放大器
  • UPDI(用于编程现代AVR微控制器)
  • 电源滤波和音频放大的额外电路
  • 10位数模转换器(DAC,用于现代8位AVR)

项目中不仅详细说明了如何使用Arduino和AVR微控制器播放音频,还提供了相应的源代码链接供进一步研究。此外,视频示例展示了音频播放过程,让读者更直观地理解项目的实现。这些技术可应用于需要播放存储音频的嵌入式项目中。

来源:
https://swharden.com/blog/2023-08-26-spi-flash-audio/

智能植物生长监控器

这是一个可爱的智能设备,专为植物爱好者设计,能够监测土壤湿度和周围环境,确保植物在最佳条件下生长。

这款设备利用电容感应技术来测量土壤湿度,并配备了低功耗的电子纸显示屏,不仅能够及时更新信息,而且耗电量极低。

此外,它还内置了BME688传感器,可以监测空气质量和CO2水平,帮助你更好地照料植物。

软硬件:

  • ESP32-C6芯片:内置4MB闪存
  • AEM10941:太阳能能量采集
  • USB-C接口:用于充电和编程
  • 1.54英寸电子纸显示屏
  • BME688环境传感器
  • 内置土壤湿度传感器
  • 电池电压检测
  • 通过USB的1A充电速率
  • 3.7伏锂聚合物电池
  • KiCAD 7.0.5:用于设计电路板的软件
  • 3D打印机:用于制作设备外壳
  • Nordic PPK2和Joulescope:用于测量功耗和太阳能充电电流
  • PCBWay:提供电路板打印和组装服务

该项目的详细电路图和组件列表可以在Plantpal的Github页面找到。此外,设备的外壳模型可以通过TinkerCAD设计,并且可以使用任何通用的3D打印机进行打印。

GitHub链接:
https://github.com/teapotlaboratories/plantpal

来源:
https://hackaday.io/project/194851-plantpal-your-pal-in-plant-care

Arduino UNO风格的8051开发板

电子爱好者“Electro Boy”将经典与创新完美结合,打造了一款以Arduino UNO为蓝本的开发板,这款开发板的核心是传奇的Intel 8051微控制器的现代版——Microchip的AT89S52-24PU芯片。这款芯片不仅保留了8051的经典特性,还增加了8kB的闪存作为程序存储空间,性能更强大。开发板设计简洁,只需很少的外部组件,包括一些无源元件、LED灯、12MHz晶体振荡器、连接到12V直流电源插口的5V稳压器,以及一个USB Type-C接口(仅用于供电)。Electro Boy在设计上受到Arduino UNO的启发,制作了带有所有控制器的PCB,将编程头和所有四个端口的双头排列整齐。项目的设计图纸和PCB的Gerber文件已经在Hackster网站上以GNU通用公共许可证3发布,供所有爱好者免费使用

来源:
https://www.hackster.io/news/electro-boy-blends-new-and-old-builds-an-arduino-uno-style-board-for-the-classic-intel-8051-9f4c70ca454f

自制JBC焊台三路选择器

焊接作业虽然概念上很简单,但在细节上却有许多讲究,使用恰当的工具对于提高工作速度和成品质量至关重要。高品质的焊台通常提供多种热端选项,但从简单的铅笔型焊头切换到热镊子往往需要拔插换接,同时还要确保焊台能正确识别新的工具。Lajt 拥有三种焊接工具和一个单输出的焊台,他的解决方案是自制一个三路前端选择器,通过按钮就能轻松选择连接到焊台上的工具。

项目用到的软硬件:

  • Arduino Pro mini
  • 继电器
  • JBC焊台
  • 不同热端选项(简单铅笔型焊头、热镊子等)

来源:
https://hackaday.com/2024/02/29/a-3-tool-selector-box-for-a-jbc-soldering-station/

周刊首发于DF创客社区 https://mc.dfrobot.com.cn/thread-318151-1-1.html

版权协议:WTFPL