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

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

3天内不再提示

如何为滑板制作一个里程表

454398 来源:工程师吴畏 2019-08-16 11:22 次阅读

步骤1:组件

组件

我使用以下组件来创建此项目:

滑板

电位计

LCD

霍尔效应传感器

10k欧姆电阻器

Raspberry pi

Arduino Nano

跳线(母对母)

跳线(Raspberry Pi)

跳线(公对公)

PCB

RFID扫描仪

RFID徽章

Powerbank

请参阅BillOfMaterials 获取链接和价格

步骤2:接线

如何为滑板制作一个里程表

大厅有3个引脚:一个VCC,一个GND和输出。

接地连接到GND。 VCC到3.3V,本例中的输出转到GPIO 26.一个10K欧姆的电阻将输出拉高。

我使用覆盆子pi和arduino nano之间的USB串行通信来读取徽章。

D9 - 》 RST(复位)

D10 - 》 SDA(SS)(SPI SS)

D11 - 》 MOSI(SPI MOSI)

D12 - 》 MISO(SPI MISO)

D13 - 》 SCK(SPI SCK)

GND - 》 GND

3.3V - 》 3.3V

步骤3:数据库方案

我的数据库有3个表:

用户

会话

数据

每个用户都可以分别跟踪数据。会话有数据,因此您可以知道会话进行时某些点的速度。

步骤4:配置Arduino Nano

首先通过USB电缆将arduino nano放入电脑。选择要上传的正确的arduino和正确的USB端口

接下来我们需要添加用于阅读RFID徽章的库。下载‘rfid-master’并转到草图,包含库,然后添加.ZIP库。转到刚刚下载的zip并使用这个,它会自动安装。下载后我编辑的‘RFID_Read.ino’按ctrl + O添加相同的时间并转到此文件并打开它。

如果您执行了上述所有这些步骤,则可以验证该文件。如果第一次出现问题,请再试一次。如果成功,您可以将其上传到您的arduino。通过使用快捷键ctrl + shift + m,您可以打开串行监视器。您可以在此处测试该文件。如果测试成功,你可以拔掉arduino并将其插入覆盆子pi的usb端口

步骤5:配置Raspberry Pi

In这些步骤我们将把raspberry pi设置为数据库和网络服务器。

在这个例子中我使用用户‘我’如果你使用另一个用户你需要改变配置文件,保持这种想法!

1。创建用户:

创建变量

pieter@rpipieter:~ $ user=me

使用户sudo并添加到所有组

groups=$(id pi -Gn | sed ‘s/^pi //g’ | sed ‘s/ /,/g’)

sudo useradd ${user} -s /bin/bash -m -G ${groups}

sudo sed “s/^pi/${user}/” /etc/sudoers.d/010_pi-nopasswd | sudo tee “/etc/sudoers.d/011_${user}-nopasswd”

sudo passwd ${user}

登录帐户

pieter@rpipieter:~ $ su - me

Password:

me@my-rpi:~$

2。连接WiFi

me@rpipieter:~ $ sudo -i

root@rpipieter:~# echo ‘Password’ | wpa_passphrase ‘Networkname’ 》》 /etc/wpa_supplicant/wpa_supplicant.conf

root@rpipieter:~# wpa_cli -i wlan0 reconfigure

root@rpipieter:~# logout

检查互联网是否正常工作

root@rpipieter:~# wget google.com

第3。使raspberry pi更新并安装所需的软件包

me@my-rpi:~$ sudo apt update

me@my-rpi:~$ sudo apt upgrade

me@rpipieter:~ $ sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 git

me@my-rpi:~$ sudo reboot -h now

的4。克隆我的github存储库

me@rpipieter:~ $ git clone https://github.com/PieterThomas/skate-o-meter

me@rpipieter:~ $ cd skate-o-meter/skateometer/

5。制作虚拟环境

虽然执行这些命令会安装很多软件包,但这可能需要一些时间。

me@rpipieter:~/skate-o-meter/skateometer $ python3 -m pip install --upgrade pip setuptools wheel virtualenv

me@rpipieter:~/skate-o-meter/skateometer $ python3 -m venv --system-site-packages env

(env) me@rpipieter:~/skate-o-meter/skateometer $ python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib pyserial pyjwt RPi.GPIO

6。创建数据库和用户

我们正在使用mysql数据库

pieter@rpipieter:~/skate-o-meter/skateometer $ cd

pieter@rpipieter:~ $ sudo mysql

然后复制,粘贴这个

GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO ‘som-data’@‘localhost’;

SET PASSWORD FOR ‘som-data’@‘localhost’ = PASSWORD(‘sensor9810’);

select * from mysql.user;

CREATE USER ‘som-admin’@‘localhost’ IDENTIFIED BY ‘admin9810’;

CREATE USER ‘som-web’@‘localhost’ IDENTIFIED BY ‘web9810’;

CREATE USER ‘som-sensor’@‘localhost’ IDENTIFIED BY ‘sensor9810’;

CREATE DATABASE skateometerdb;

GRANT ALL PRIVILEGES ON skateometerdb.* to ‘som-admin’@‘localhost’ WITH GRANT OPTION;

GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO ‘som-web’@‘localhost’;

GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO ‘som-sensor’@‘localhost’;

FLUSH PRIVILEGES;

接下来,我们将添加具有关系的现有数据库方案。

me@rpipieter:~/skate-o-meter/skateometer $ sudo mysql 《 sql/skateometerdb_dump-withoutdata.sql

7。服务

这里我们复制我们的配置文件并重新加载文件夹,以便我们可以启用服务

me@rpipieter:~/skate-o-meter/skateometer $ sudo cp conf/som-*.service /etc/systemd/system

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl daemon-reload

现在我们要去启用服务,这样每次我们启动树莓派时,它们都会自动启动它。

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl enable som-flask.service

Created symlink /etc/systemd/system/multi-user.target.wants/som-flask.service → /etc/systemd/system/som-flask.service.

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl enable som-data.service

Created symlink /etc/systemd/system/multi-user.target.wants/som-data.service → /etc/systemd/system/som-data.service.

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl start som-data.service

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl start som-flask.service

8。 NGINX

me@rpipieter:~/skate-o-meter/skateometer $ sudo cp conf/nginx /etc/nginx/sites-available/skateometer

me@rpipieter:~/skate-o-meter/skateometer $ sudo rm /etc/nginx/sites-enabled/default

me@rpipieter:~/skate-o-meter/skateometer $ sudo ln -s /etc/nginx/sites-available/skateometer /etc/nginx/sites-enabled/skateometer

me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl restart nginx.service

第6步:住房+大厅

住房

首先,我在我的滑板上为LCD,电位器和蜂鸣器打了一个洞。之后我将LCD,电位器和蜂鸣器焊接在PCB上。然后我用RPI的一个跳线,一个40针的跳线。我把一面放在树莓派中,另一半放在我切口,这一面我们将用来焊接。在‘rpi-cable’文件中,你可以看到你需要焊接哪根电线。

对于外壳,我使用了一个旧的曲线盒,我在其中放了一些孔,用于以太网电缆和跳线到进入盒子里。

我用一些螺丝把盒子放在滑板下面。在盒子里面,我安排了一切,所以它适合并且还使用螺丝和一些橡胶来保持一切就位。这样可以更轻松地取出东西。

RFID安装在盒子的灯光上,并用拉链固定,我遇到的一个问题是,有时它没有扫描,但有一些变化我霍尔效应传感器

首先,我在我的车轮上钻了一个洞,并在其中放入一块磁铁。

对于大厅使用3个跳线(男性对男性)我把它们焊接在我的PCB上以及大厅本身。我将霍尔传感器安装在我的卡车上,带有一些拉链。确保磁铁和传感器对齐良好,否则不会始终记录脉冲。

步骤7:启动应用程序

步骤1:

将树莓和移动电源插入。

第2步:

等到程序启动,您可以在液晶显示屏上关注此功能。您将看到IP地址,转到此IP地址。

步骤3:

创建用户,您可以通过注册来完成。您需要扫描徽章以在液晶显示屏上查看徽章的UID。

第4步:

如果您创建了用户,则可以扫描徽章和会话将开始。

第5步:

巡航

第6步:

再次扫描徽章以停止会话

步骤7:

登录以查看您的会话和详细数据来自会话

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

    关注

    1

    文章

    15

    浏览量

    9808
收藏 人收藏

    评论

    相关推荐

    轧机牌坊滑板压亏修复的新方法

    电子发烧友网站提供《轧机牌坊滑板压亏修复的新方法.docx》资料免费下载
    发表于 03-14 16:16 0次下载

    电动滑板车控制器内部电路

    升特36伏滑板车控制器可能坏了,给电不走,转把输出电压正常,电机正常,拆开控制器看内部线路断(之后焊接了),但还不走,看有电阻好像烧了,测量为189Ω,求助大神,这个是坏了了,正常多大阻值呢。
    发表于 02-13 20:37

    何为单片机的按键加锁防止多次触发?

    何为单片机的按键加锁防止多次触发
    发表于 10-30 08:21

    制作蓝牙遥控小车

    本周我们来制作蓝牙遥控小车,不得不说bluno nano的蓝牙交互功能还是让人眼前亮,毕竟是首款集成蓝牙4.0的arduino板。制作
    发表于 10-13 06:01

    用arduino做一个功能强大的体化万用

    教你用arduino做一个功能强大的体化万用。附带资料包含PCB设计图、相关代码等。你也可以简单自己制作
    发表于 09-27 07:06

    智能速度里程表设计方案

    智能速度里程表设计
    发表于 09-20 07:58

    智能速度里程表设计

    发表于 08-16 11:30 1次下载
    智能速度<b class='flag-5'>里程表</b>设计

    线圈,块磁铁,餐盒制作的扬声器

    DIY制作
    学习电子知识
    发布于 :2023年07月24日 21:37:36

    MCU微控制器在电动滑板车技术核心剖析

    如果把电动滑板车的组件拆分,一一估价的话,电机及控制系统的成本是最高的,同时他们也是电动滑板车的“大脑“,电动滑板车的启动、运行、进退、速度、停止依靠的都是滑板车中的电机控制系统。
    的头像 发表于 07-23 15:06 315次阅读
    MCU微控制器在电动<b class='flag-5'>滑板</b>车技术核心剖析

    用于自行车的里程表和速度计

    电子发烧友网站提供《用于自行车的里程表和速度计.zip》资料免费下载
    发表于 06-25 15:19 5次下载
    用于自行车的<b class='flag-5'>里程表</b>和速度计

    何为BleuIO加密狗制作自己的固件

    电子发烧友网站提供《如何为BleuIO加密狗制作自己的固件.zip》资料免费下载
    发表于 06-14 09:56 0次下载
    如<b class='flag-5'>何为</b>BleuIO加密狗<b class='flag-5'>制作</b>自己的固件

    在城市地区使用低等级IMU的单目视觉惯性车轮里程

    受简化惯性传感器系统(RISS)[23]的启发,我们开发了视觉惯性车轮里程计(VIWO)。具体而言,我们将MSCKF中的系统模型重新设计为3DRISS,而不是INS,使用里程表、3轴陀螺仪和2轴(向前和横向)加速计的单通道速度测量。
    的头像 发表于 06-06 14:30 1011次阅读
    在城市地区使用低等级IMU的单目视觉惯性车轮<b class='flag-5'>里程</b>计

    助力低碳出行 | 基于ACM32 MCU的电动滑板车方案

    前言随着智能科技的快速发展,电动滑板车的驱动系统也得到了长足的发展。国内外的电动滑板车用电机驱动系统分为传统刷式电机和无刷电机两种类型。其中,传统的刷式电机已经逐渐被无刷电机所取代,无刷电机的性能
    的头像 发表于 05-08 10:20 266次阅读
    助力低碳出行 | 基于ACM32 MCU的电动<b class='flag-5'>滑板</b>车方案

    何为S32K311或S32K310创建freertos演示?

    我已经安装了 freertos 包,如何为 S32K311 或 S32K310 创建 freertos 演示 我现在找不到 freertos 项目 现在我得到了图 2
    发表于 04-25 07:44

    何为sja1110创建新的图像而不仅仅是使用GOLDVIP图像?

    我想使用 SPI 下载具有不同配置和代码库的 sja1110 固件,如何为 sja1110 创建新的图像而不仅仅是使用 GOLDVIP 图像?谢谢
    发表于 04-04 08:01