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

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

3天内不再提示

用树莓派打造智能的行星观测器步骤

Q4MP_gh_c472c21 来源:嵌入式ARM 作者:snowbiscuit 2020-11-12 17:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最近的日环食吸引了一大波天文爱好者。在我所居住城市的科技中心大楼外就有一台大型的天文望远镜,它可以鸟瞰宇宙中的其他星球。我一直认为那些真实存在、又遥不可及的外太空与微小的我有着某种神秘的联系。

我准备用树莓派和天文望远镜复制一台智能的行星观测器。从 NASA 获取已知行星的坐标数据,然后这台仪器就可以自动调整角度,聚焦这颗行星,让我可以很方便地观测它们。相信它将很好地带你观看和感受地球之外的外太空世界。

视频演示

材料清单

树莓派 3B ×1

16×2 LCD 屏幕 ×1

驱动器步进电机 28-BYJ48 ×2

按钮 ×3

法兰联轴器 5mm ×2

按钮指南针 ×1

M3 螺栓/螺母 ×8

3D 打印外壳 ×1

3D 打印望远镜 ×1

行星坐标数据

这里将介绍两种定位行星的方法。

1、使用水平坐标系。它可以从北方(方位角)向上方倾斜和从地平线(高度)向上方倾斜,因此是以你的位置而定,所以角度会有所不同。此方法以北方作为参考。

请点击链接查看:

https://en.wikipedia.org/wiki/Horizontal_coordinate_system

2、将树莓派连上 WiFi 后,直接连接到 NASA 获得数据。

访问行星数据

从 NASA 喷气推进实验室(JPL)获取数据:

https://ssd.jpl.nasa.gov/?horizons

访问数据前需要安装 AstroQuery 库,用于查询行星网络表单和数据库的工具。

请点击下载安装:

https://astroquery.readthedocs.io/en/latest/jplhorizons/jplhorizons.html

请确保安装最新版本的 Raspbian(我使用的是3.7.3版)。

打开终端运行命令:

sudo apt install python3-pip

然后使用 pip 安装 astroquery 的升级版本。

pip3install--pre--upgradeastroquery

在继续完成项目前,请使用简单的 Python 脚本访问该数据,确保正确安装了所有的依赖项。

from astroquery.jplhorizons import Horizonsmars = Horizons(id=499, location='000', epochs=None, id_type='majorbody')eph = mars.ephemerides()print(eph)

接下来会显示火星的详细位置。

请点击该链接查看火星定位是否正确:

https://theskylive.com/planetarium

为了方便查询,我会做简化处理。其中 id 表示是 JPL 数据中与火星的数据,epochs 表示获取数据的时间,id_type 表示询问太阳系主体。“000”在格林威治天文台的位置代码中表示英国的位置。其他位置可点击查看:

https://minorplanetcenter.net//iau/lists/ObsCodesF.html

故障排除:

如果出现报错:No module named ‘keyring.util.escape’

可以在终端中输入以下命令:

pip3install--upgradekeyrings.alt

编程

为了找到精确的坐标数据,在 getPlanetInfo 方法修改位置信息(使用上一步中的天文台的列表修改这里的 location)

def getPlanetInfo(planet): obj = Horizons(id=planet, location='000', epochs=None, id_type='majorbody') eph = obj.ephemerides() return eph

完整的 python 脚本,请在项目文件库中下载:

https://make.quwj.com/project/240

连接硬件

在该步骤中,要连接面包板、跳线、两个步进电机、LCD 屏幕和三个按钮。

在树莓派上找到引脚,在终端上输入

pinout

它会可以显示 GPIO 编号和板子编号。

连接方式如下:

第一个进电机 – 7、11、13、15

第二个进电机 – 40、38、36、32

按钮 1 – 33

按钮 2 – 37

按钮 3 – 35

显示屏 – 26、24、22、18、16、12

全部连接后,运行 python 脚本

python3 planetFinder.py

在屏幕上会显示设置文本,并且按钮可以启动步进电机。

3D 打印外壳

1、3D 打印外壳。

所有打印 STL 文件,请在项目文件库下载:

https://make.quwj.com/project/240

2、测试外壳

外壳组装到位后,进行其他组件的安装。将按钮安装到位,固定显示幕和步进电机,打磨外壳,确保所有组件都能正常使用。

安装电子组件

1、安装步进电机

步进电机将控制位于外壳上方的望远镜的仰角,因此需要延长电线以便旋转。请如图进行安装。

接线完成后,运行 python 脚本,检查是否一切正常。

然后将电线放回管内,直到步进电机就位,再将步进电机固定在外壳上,然后将外壳粘合。

2、安装按钮和 LCD 屏幕

如图所示安装按钮,在焊接前使用螺母使其固定到位。

再使用 M3 螺栓和螺母固定 LCD 显示器。请将 LCD 其中一个引脚焊接到电位计上。

在将所有的组件粘合之前,再次测试代码,确保所有能够正常工作,因为该阶段更容易修复。

3、添加法兰联轴器

将 3D 打印的底座连接到步进电机。

将法兰联轴器安装在步进电机的顶部,并用螺钉固定到位。

将望远镜安装到旋转塔顶上的电机很简单,因为有足够的空间可以将小螺钉固定到位。

一个法兰器粘连在旋转塔架的底座上,另一个安装在望远镜上。

再次测试,如果有问题,马上修复并确保所有连线正确。

启动

因为想把它独立运行,而不是每次手动代码寻找行星,因此将其设置为在树莓派开启时运行代码。

在终端中输入。

1crontab -e

在打开的文件中,在文件末尾,另起一行输入。

1@reboot python3 /home/pi/PlanetFinder/planetFinder.py &

代码保存在 PlanetFinder 文件夹中,因此文件位置为:

/home/pi/PlanetFinder/planetFinder.py。如果你保存在其他地方,请在此处更改。

说明:它允许代码在后台运行,因此它在启动时不会阻止其他进程。

完成组装

将小指南针添加到旋转底座的中间,最后,将所有的组件安装到位。

使用方法

1、当望远镜开始启动时,调整垂直轴。按下向上和向下按钮可以移动望远镜,调整好后按下 OK 按钮即可(位于底部)。

2、调整旋转角度,使用按钮旋转望远镜,直到小指南针将望远镜指向北,然后按下 OK 按钮即可。

现在,你可以使用向上、向下按钮选择行星,确定好后按下 OK 按钮即可。它将显示选定行星的高度和方位角,指向它几秒后再转向北。

目前为止,项目就完成了。你会去寻找哪一颗行星呢?!

责任编辑:xj

原文标题:太强了!树莓派打造智能的行星观测器

文章出处:【微信公众号:嵌入式ARM】欢迎添加关注!文章转载请注明出处。

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

    关注

    8

    文章

    1745

    浏览量

    121900
  • 观测器
    +关注

    关注

    0

    文章

    51

    浏览量

    10483
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109709

原文标题:太强了!树莓派打造智能的行星观测器

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    零成本钢铁侠手套!树莓+OpenCV 秒变手势遥控

    使用树莓和OpenCV实时扫描并存储二维码使用树莓和OpenCV实现物体与动物识别使用树莓
    的头像 发表于 08-16 16:16 885次阅读
    零成本钢铁侠手套!<b class='flag-5'>树莓</b><b class='flag-5'>派</b>+OpenCV 秒变手势遥控<b class='flag-5'>器</b>!

    如何使用树莓与OpenCV实现面部和运动追踪的云台系统?

    使用树莓和OpenCV实时扫描并存储二维码使用树莓和OpenCV实现物体与动物识别使用树莓
    的头像 发表于 08-14 17:45 961次阅读
    如何使用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>与OpenCV实现面部和运动追踪的云台系统?

    基于改进滑模观测器的PMSM无位置传感控制

    为解决传统基于滑模观测器永磁同步电机无位置传感控制系统存在的抖振问题,本文提出了一种基于非线性能量函数参考模型的新型改进滑模观测器。在分析非线性能量函数参考模型的基础上,设计了改进的滑模观测
    发表于 08-06 14:38

    【精选直播】无感FOC控制中滑模观测器估算转子角度思路分享

    直播预告扫码购买课程&预约直播直播亮点1、FOC无感控制框图分析2、电机数学模型回顾3、转子位置角求取思路4、滑模观测器思路分享5、滑模观测器的实现直播大纲1、无感FOC控制框图分析2、电机
    的头像 发表于 08-05 08:06 869次阅读
    【精选直播】无感FOC控制中滑模<b class='flag-5'>观测器</b>估算转子角度思路分享

    树莓打造无人机,你需注意的事项!

    能否将树莓装入无人机?使用树莓打造无人机是可行的。树莓
    的头像 发表于 07-14 17:49 1522次阅读
    <b class='flag-5'>用</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>打造</b>无人机,你需注意的事项!

    无刷直流电机离散滑模观测器直接转矩控制

    摘要:分析了非理想反电势下无刷直流电机传统脉宽调制电流控制产生电磁转矩脉动的原因。为便于计算机控制,采用离散滑模观测器获取无刷直流电机反电势,进而完成电磁转矩的估算,并证明了离散滑模观测器的到达条件
    发表于 07-07 18:20

    无刷直流电机滑模观测器参数优化设计方法

    摘要:滑模反电势观测器的增益参数会影响观测器的收敛速度以及动态响应性能,常见的设计方法是基于观测器稳定性理论进行设计。提出一种利用遗传算法在稳定域内搜索观测误差最小的增益参数的新方法,
    发表于 06-27 16:48

    树莓小技巧:无需键盘或显示,如何通过WiFi设置树莓

    树莓是一款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务或家庭自动化。通常,设置树莓需要键盘和显示
    的头像 发表于 06-26 15:41 1044次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示<b class='flag-5'>器</b>,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类树莓识别不同型号的树莓

    在本教程系列的第一部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是树莓
    的头像 发表于 06-13 16:39 989次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类<b class='flag-5'>器</b>:<b class='flag-5'>用</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    两种感应电机磁链观测器的参数敏感性研究

    模式和发电模式下对闭环电压电流模型磁链观测器和滑模磁链观测器参数敏感性进行了研究,通过仿真和实验比较了这两种观测器对定、转子电阻及励磁电感的敏感性。同时还研究了基于这两种观测器的模型参
    发表于 06-09 16:16

    树莓“揪出”家里的耗电怪兽!

    在本应用中,我们将使用树莓设置一个CE电流监测,并通过网页界面显示电路的电流读数。本项目使用的组件硬件组件树莓2ModelBx112通
    的头像 发表于 06-04 15:33 1144次阅读
    <b class='flag-5'>用</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b>“揪出”家里的耗电怪兽!

    树莓“吉尼斯世界记录”:将树莓的性能发挥到极致的项目!

    树莓是一款功能强大、体积小巧且高度可定制的设备,多年来,我们见证了它被应用于众多领域。无论是将其装入3D打印的经典游戏机外壳,还是简单地将它隐藏起来作为家庭文件服务,我们都报道过在社区里
    的头像 发表于 05-22 16:53 1199次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“吉尼斯世界记录”:将<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的性能发挥到极致的项目!

    树莓 Zero 打造智能漫游车!

    使用PXFMini和树莓Zero打造您自己的自主漫游车。本项目所用组件硬件组件ErleRoboticsPXFmini×1树莓Zero×1
    的头像 发表于 05-13 16:39 870次阅读
    <b class='flag-5'>用</b> <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Zero <b class='flag-5'>打造</b>的<b class='flag-5'>智能</b>漫游车!

    树莓4 打造专属流媒体控制台!

    树莓体验DIY智能科技!如今市面上有各种各样的流媒体控制台,但购买现成的哪有自己从零开始制作的有趣呢?至少,这似乎是树莓
    的头像 发表于 05-11 08:33 427次阅读
    <b class='flag-5'>用</b> <b class='flag-5'>树莓</b><b class='flag-5'>派</b>4 <b class='flag-5'>打造</b>专属流媒体控制台!

    树莓“复活”我的世界爬行者,现实版“噩梦”机器人诞生!

    树莓与《我的世界》渊源已久。无论你是树莓运行服务,还是玩《我的世界》
    的头像 发表于 05-07 17:31 505次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“复活”我的世界爬行者,现实版“噩梦”机器人诞生!