做了一个骑行导航器,不需要依赖手机APP、小程序
原理图1
PCB图1
原理图2
PCB图2
通过矩阵键盘输入,需要在另一块较小的PCB上,通过FFC排线与主PCB连接,按键一端与同列按键并联,另一端与同行按键并联。
本设备采用3.7V锂电池供电,经线性稳压器BL9110-330BPFB输出3.3V。
VCC(4脚)使用Type-C接口提供5V输入,并将BAT(3脚)连接锂电池。
在正常情况下,若电池已连接:
正在充电时CHRG(1脚)输出低电平、FULL(5脚)输出高电平;
充满电后CHRG输出高电平、FULL输出低电平
通过连接LED灯,可进行充电状态显示
STM32内无法储存中文字库,因此采用外部Flash进行储存,W25Qxx系列为Nor Flash,可通过SPI与STM32进行通信。
GPS模块采用ATGM336H成品模组,支持GPS、北斗等定位系统,通过串口发送数据。模组供电后,若正在搜星,则模组上方LED灯常亮。搜星完成后,模组LED灯以1Hz频率闪烁,且PPS引脚以1Hz频率输出脉冲,以驱动PCB顶层的GPS LED灯闪烁。此模块在使用时需连接天线,本项目采用陶瓷天线。
如何“搭建”远程平台?
这涉及到高德地图API与华为云的使用:
首先,需要注册高德地图开发者账号
创建Key(每种LBS服务每日5000次调用)
创建步骤与API功能见https://oshwhub.com/ljh345/cycling_assistance
路径规划、轨迹简化等一系列操作需要较高算力,在ESP32上不便操作。因此,需要借助远程平台,在云端执行复杂的运算处理后,通过HTTP读取最终的结果。
函数工作流FunctionGraph是华为云推出的一款无服务器计算服务,用户自行编写相关函数,客户端通过HTTP等方式访问即可执行代码。
①总览->创建函数,选择函数类型为HTTP函数。
②进入函数,创建触发器,选择API网关服务,使此函数能通过HTTP调用。方便起见,安全认证可选择None,其它配置默认即可。
③进入API管理页面,编辑当前API,第2步,修改当前请求Path并发布API,便于管理。
④进入该函数的“设置”界面,可通过“调用URL”下的路径进行函数调用。
⑤创建完成后,开始编写代码。FunctionGraph不支持C/C++,但可以使用Python。
以Python为例,将代码文件重命名为 input.py,bootstrap内容改为/opt/function/runtime/python3.9/rtsp/python/bin/python3 $RUNTIME_CODE_ROOT/index.py。
以下为Python代码模板:
import socketserver
import http.server
from urllib.parse import parse_qs, urlparse
import json
import requests
PORT = 8000
class SimpleHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
# 在以下位置补充自己的代码
params = parse_qs(urlparse(self.path).query)
str = params["str"]
# 返回同样为Json格式的字符串
message = {
"status": 0,
"reply": str
}
self.wfile.write(json.dumps(message).encode())
with socketserver.TCPServer(('127.0.0.1', PORT), SimpleHTTPRequestHandler) as httpd:
print('Python web server at port 8000 is running..')
httpd.serve_forever()
⑥为验证代码编写是否正确,可自行配置测试事件。选择事件模板为API网关服务(APIG),在pathParameters下填写传入的参数,例如:
"pathParameters": {
"str" : "HelloWorld"
},
⑦测试完成后,通过HTTP访问该函数,网页显示{"status": 0, "reply": ["HelloWorld"]},调用成功。
元器件总价:122.18元,由于立创商城购买元件有最小数量限制,实际需要180.97元
3D打印件价格:29.25元
但是!我的方案如下:
元器件:回收以往使用过的
PCB:使用嘉立创免费PCB打样
星火计划减免耗材费用:105.72元
本次实际成本:45.54元
“踏上设计它的路,比做出它更重要。”
本项目已开源!
——想复刻?想给作者点赞?可复制开源网址 前往原文。
开源网址:https://oshwhub.com/ljh345/cycling_assistance
MAX3485EESA+T/RS-485/RS-422芯片 | 5.99 | |
DS18B20+/温度传感器 | 4.38 | |
ADUM1201ARZ-RL7/数字隔离器 | 5.28 | |
ADM2483BRWZ-REEL/隔离式RS485/422收发器 | 9.36 | |
OPA2189IDR/精密运放 | 6.83 | |
STM32F103RCT6/单片机(MCU/MPU/SOC) | 6.5 | |
STM32F103VCT6/单片机(MCU/MPU/SOC) | 7.05 | |
STM32F103CBT6/单片机(MCU/MPU/SOC) | 5.75 | |
STM32F103ZET6/单片机(MCU/MPU/SOC) | 10.9 | |
AMC1311BDWVR/特殊功能放大器 | 4.95 |
60万+现货SKU
品类不断扩充中
科技智能大仓储
最快4小时发货
正品有保障
物料可追溯
明码标价节省时间
一站式采购元器件
您确定要删除此收货地址的吗?
您确定删除此收货地址吗?
content
content