Mục lục:
- Bước 1: Những gì bạn cần
- Bước 2: Tọa độ hành tinh
- Bước 3: Truy cập Dữ liệu Hành tinh
- Bước 4: Mã
- Bước 5: Kết nối phần cứng
- Bước 6: Thiết kế vỏ máy
- Bước 7: Kiểm tra bản in
- Bước 8: Mở rộng động cơ bước
- Bước 9: Gắn các nút và màn hình LCD
- Bước 10: Thêm mặt bích
- Bước 11: Chạy khi khởi động
- Bước 12: Dán tất cả lại với nhau
- Bước 13: Sử dụng
- Bước 14: Hoàn thành
Video: Raspberry Pi Planet Finder: 14 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
Bên ngoài Trung tâm Khoa học ở thành phố của tôi, có một cấu trúc kim loại lớn có thể quay và chỉ vào vị trí của các hành tinh trên bầu trời. Tôi chưa bao giờ thấy nó hoạt động, nhưng tôi luôn nghĩ sẽ thật kỳ diệu khi biết những thế giới khác không thể tiếp cận này thực sự nằm ở đâu trong mối quan hệ với bản thân nhỏ bé của tôi.
Khi tôi đi ngang qua cuộc triển lãm đã chết từ lâu này gần đây, tôi đã nghĩ "Tôi cá là tôi có thể làm được điều đó" và vì vậy tôi đã làm như vậy!
Đây là hướng dẫn về cách chế tạo Công cụ tìm kiếm hành tinh (có Mặt trăng) để bạn cũng có thể biết nơi để tìm khi bạn cảm thấy sợ hãi trước không gian.
Bước 1: Những gì bạn cần
1 x Raspberry Pi (phiên bản 3 trở lên cho wifi tích hợp)
1 x màn hình LCD (16 x 2) (như thế này)
2 x Động cơ bước có trình điều khiển (28-BYJ48) (như thế này)
3 x Nút Đẩy (như thế này)
2 x Bộ ghép mặt bích (như thế này)
1 x La bàn nút (như thế này)
8 x bu lông và đai ốc M3
Các bộ phận in 3D cho vỏ và kính thiên văn
Bước 2: Tọa độ hành tinh
Có một số cách khác nhau để mô tả vị trí của các vật thể thiên văn trên bầu trời.
Đối với chúng tôi, cái có ý nghĩa nhất để sử dụng là Hệ tọa độ ngang như thể hiện trong hình trên. Hình ảnh này là từ Trang Wikipedia được liên kết ở đây:
en.wikipedia.org/wiki/Horizontal_coordinat…
Hệ thống Tọa độ ngang cung cấp cho bạn một góc từ Bắc (Phương vị) và hướng lên từ đường chân trời (Cao độ), do đó, nó sẽ khác nhau tùy thuộc vào nơi bạn đang nhìn trên thế giới. Vì vậy, công cụ tìm hành tinh của chúng ta cần phải tính đến vị trí và có một số cách tìm ra phương Bắc để làm tài liệu tham khảo.
Thay vì cố gắng tính toán Độ cao và Góc phương vị thay đổi theo thời gian và vị trí, chúng tôi sẽ sử dụng kết nối wifi trên Raspberry Pi để tra cứu dữ liệu này từ NASA. Họ theo dõi những thứ này nên chúng tôi không cần phải làm thế;)
Bước 3: Truy cập Dữ liệu Hành tinh
Chúng tôi đang lấy dữ liệu của mình từ Phòng thí nghiệm sức đẩy phản lực của NASA (JPL) -
Để truy cập dữ liệu này, chúng tôi sử dụng thư viện có tên là AstroQuery, đây là một bộ công cụ để truy vấn các biểu mẫu và cơ sở dữ liệu web thiên văn. Tài liệu cho thư viện này được tìm thấy tại đây:
Nếu đây là dự án Raspberry Pi đầu tiên của bạn, hãy bắt đầu bằng cách làm theo hướng dẫn thiết lập này:
Nếu bạn đang sử dụng Raspbian trên Raspberry Pi của mình (bạn sẽ như vậy nếu bạn làm theo hướng dẫn ở trên), thì bạn đã cài đặt python3, hãy đảm bảo rằng bạn đã cài đặt phiên bản mới nhất (tôi đang sử dụng phiên bản 3.7.3). Chúng ta cần sử dụng cái này để lấy pip. Mở một thiết bị đầu cuối và nhập như sau:
sudo apt cài đặt python3-pip
Sau đó, chúng tôi có thể sử dụng pip để cài đặt phiên bản nâng cấp của astroquery.
cài đặt pip3 --pre - nâng cấp truy vấn chiêm tinh
Trước khi tiếp tục với phần còn lại của dự án này, hãy thử truy cập dữ liệu này bằng một tập lệnh Python đơn giản để đảm bảo rằng tất cả các phần phụ thuộc phù hợp đã được cài đặt chính xác.
from astroquery.jplhorizons nhập Horizons
mars = Horizons (id = 499, location = '000', epochs = None, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
Điều này sẽ cho bạn thấy chi tiết về vị trí của sao Hỏa!
Bạn có thể kiểm tra xem dữ liệu này có chính xác hay không bằng cách sử dụng trang web này để tra cứu vị trí hành tinh trực tiếp:
Để chia nhỏ truy vấn này một chút, id là số liên quan đến sao Hỏa trong dữ liệu của JPL, epochs là thời gian chúng tôi muốn dữ liệu từ đó (Không có nghĩa là ngay bây giờ) và id_type đang yêu cầu các thiên thể chính của hệ mặt trời. Vị trí hiện được đặt ở Vương quốc Anh là '000' là mã vị trí của đài quan sát ở Greenwich. Các địa điểm khác có thể tham khảo tại đây:
Xử lý sự cố:
Nếu bạn gặp lỗi: Không có mô-đun nào có tên 'keyring.util.escape'
hãy thử lệnh sau trong terminal:
cài đặt pip3 - nâng cấp keyrings.alt
Bước 4: Mã
Đính kèm với bước này là toàn bộ tập lệnh python được sử dụng trong dự án này.
Để tìm dữ liệu chính xác cho vị trí của bạn, hãy truy cập hàm getPlanetInfo và thay đổi vị trí bằng cách sử dụng danh sách các đài quan sát ở bước trước.
def getPlanetInfo (hành tinh):
obj = Horizons (id = Planet, location = '000', epochs = None, id_type = 'majorbody') eph = obj.ephemerides () return eph
Bước 5: Kết nối phần cứng
Sử dụng bảng mạch và dây jumper, kết nối hai động cơ bước, màn hình LCD và ba nút như thể hiện trong sơ đồ mạch ở trên.
Để biết số chân cắm trên Raspberry Pi của bạn, hãy chuyển đến thiết bị đầu cuối và nhập
sơ đồ chân
Điều này sẽ cho bạn thấy hình ảnh hoàn chỉnh ở trên với số GPIO và số bảng. Chúng tôi đang sử dụng số bảng để xác định chân nào được sử dụng trong mã, vì vậy tôi sẽ tham khảo các số trong ngoặc.
Để trợ giúp cho sơ đồ mạch, đây là các chân được kết nối với từng phần:
Động cơ bước thứ nhất - 7, 11, 13, 15
Động cơ bước thứ 2 - 40, 38, 36, 32
Nút1 - 33
Nút2 - 37
Nút3 - 35
Màn hình LCD - 26, 24, 22, 18, 16, 12
Khi tất cả điều này được kết nối, hãy chạy tập lệnh python
python3 hành tinhFinder.py
và bạn sẽ thấy màn hình hiển thị văn bản thiết lập và các nút sẽ di chuyển động cơ bước.
Bước 6: Thiết kế vỏ máy
Vỏ được thiết kế để in 3D dễ dàng. Nó chia thành các phần riêng biệt, sau đó được dán lại với nhau khi các thiết bị điện tử đã được cố định vào đúng vị trí.
Các lỗ có kích thước cho các nút tôi đã sử dụng và các bu lông M3.
Tôi đã in kính thiên văn thành các bộ phận và dán chúng lại với nhau sau đó để tránh cấu trúc hỗ trợ quá nhiều.
Các tệp STL được đính kèm ở bước này.
Bước 7: Kiểm tra bản in
Khi mọi thứ đã được in xong, hãy đảm bảo mọi thứ vừa khít với nhau trước khi tiến hành bất kỳ quá trình dán keo nào.
Lắp các nút vào đúng vị trí và cố định màn hình cũng như động cơ bước bằng bu lông M3 và giúp mọi thứ hoạt động tốt. Gỡ bỏ bất kỳ cạnh thô nào để tách mọi thứ ra một lần nữa trước khi thực hiện bước tiếp theo.
Bước 8: Mở rộng động cơ bước
Động cơ bước sẽ điều khiển góc nâng của kính thiên văn sẽ nằm phía trên vỏ máy chính và cần một chút dây điện để quay. Các dây cần được kéo dài bằng cách cắt chúng giữa bước và bảng điều khiển của nó và hàn một chiều dài dây mới ở giữa.
Tôi đã chèn dây mới vào tháp đỡ bằng cách sử dụng một đoạn sợi để giúp cố định nó vì dây tôi đang sử dụng khá cứng và liên tục bị mắc kẹt. Sau khi xuyên qua, nó có thể được hàn vào động cơ bước, đảm bảo theo dõi màu nào được kết nối để gắn lại các màu phù hợp ở đầu kia. Đừng quên thêm nhiệt co ngót cho dây điện!
Sau khi được hàn, hãy chạy tập lệnh python để kiểm tra mọi thứ vẫn hoạt động, sau đó đẩy dây trở lại ống cho đến khi động cơ bước vào vị trí. Sau đó, nó có thể được gắn vào vỏ động cơ bước bằng bu lông và đai ốc M3 trước khi mặt sau của vỏ được dán vào vị trí.
Bước 9: Gắn các nút và màn hình LCD
Chèn các nút và vặn chặt các đai ốc để cố định chúng vào vị trí trước khi hàn. Tôi thích sử dụng một dây nối đất chung chạy giữa chúng cho gọn gàng.
Giữ chặt màn hình LCD bằng bu lông và đai ốc M3. Màn hình LCD muốn có một chiết áp trên một trong các chân của nó mà tôi cũng đã hàn trong giai đoạn này.
Kiểm tra lại mã! Đảm bảo rằng mọi thứ vẫn hoạt động trước khi chúng ta dán mọi thứ lại với nhau vì việc sửa chữa ở giai đoạn này sẽ dễ dàng hơn nhiều.
Bước 10: Thêm mặt bích
Để kết nối các bộ phận được in 3D với động cơ bước, chúng tôi đang sử dụng khớp nối mặt bích 5mm khớp trên đầu cuối của động cơ bước và được giữ cố định bằng các vít nhỏ.
Một mặt bích được dán vào chân tháp quay và mặt kia vào kính thiên văn.
Việc gắn kính thiên văn vào động cơ trên đỉnh tháp quay rất đơn giản vì có rất nhiều không gian để tiếp cận các vít nhỏ giữ nó tại chỗ. Mặt bích còn lại khó giữ chặt hơn, nhưng vẫn có đủ khe hở giữa vỏ chính và chân tháp xoay để lắp một khóa allen nhỏ và vặn chặt vít.
Kiểm tra lần nữa!
Bây giờ mọi thứ sẽ hoạt động như nó sẽ ở trạng thái cuối cùng. Nếu không, bây giờ là lúc để sửa lỗi và đảm bảo tất cả các kết nối đều an toàn. Đảm bảo rằng các dây điện tiếp xúc không chạm vào nhau, quấn băng dính điện và vá bất kỳ chỗ nào có thể gây ra sự cố.
Bước 11: Chạy khi khởi động
Thay vì chạy mã theo cách thủ công mỗi khi chúng tôi muốn tìm một hành tinh, chúng tôi muốn nó chạy như một triển lãm độc lập, vì vậy chúng tôi sẽ thiết lập nó để chạy mã của chúng tôi bất cứ khi nào Raspberry Pi bật.
Trong thiết bị đầu cuối, nhập
crontab -e
Trong tệp mở ra, hãy thêm phần sau vào cuối tệp, sau đó là một dòng mới.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Tôi đã lưu mã của mình trong một thư mục có tên là PlanetFinder, vì vậy /home/pi/PlanetFinder/planetFinder.py là vị trí của tệp của tôi. Nếu của bạn được lưu ở một nơi khác, hãy đảm bảo thay đổi nó ở đây.
Dấu & ở cuối rất quan trọng vì nó cho phép mã chạy ở chế độ nền, vì vậy nó không giữ các quy trình khác cũng xảy ra khi khởi động.
Bước 12: Dán tất cả lại với nhau
Mọi thứ chưa được dán tại chỗ bây giờ sẽ được cố định.
Cuối cùng, thêm chiếc la bàn nhỏ vào giữa đế xoay.
Bước 13: Sử dụng
Khi Planet Finder bật, nó sẽ nhắc người dùng điều chỉnh trục tung. Nhấn các nút lên và xuống sẽ di chuyển kính thiên văn, hãy thử và làm cho nó bằng phẳng, trỏ sang phải, sau đó nhấn nút ok (ở dưới cùng).
Sau đó, người dùng sẽ được yêu cầu điều chỉnh vòng quay, sử dụng các nút để quay kính thiên văn cho đến khi nó hướng Bắc theo la bàn nhỏ, sau đó nhấn ok.
Giờ đây, bạn có thể di chuyển qua các hành tinh bằng cách sử dụng các nút lên / xuống và chọn một hành tinh bạn muốn tìm bằng nút ok. Nó sẽ hiển thị Độ cao và Góc phương vị của hành tinh, sau đó đi và chỉ vào nó trong vài giây trước khi quay lại quay mặt về hướng Bắc.
Bước 14: Hoàn thành
Tất cả đã được làm xong!
Thích thú khi biết tất cả các hành tinh ở đâu:)
Giải nhất trong Thử thách không gian
Đề xuất:
Máy ảnh hồng ngoại hình ảnh nhiệt tự làm: 3 bước (có hình ảnh)
Máy ảnh hồng ngoại hình ảnh nhiệt tự làm: Xin chào! Tôi luôn tìm kiếm các Dự án mới cho các bài học vật lý của mình. Hai năm trước, tôi đã xem một báo cáo về cảm biến nhiệt MLX90614 từ Melexis. Loại tốt nhất chỉ với 5 ° FOV (trường nhìn) sẽ phù hợp với máy ảnh nhiệt tự chế
Tự làm cảm biến hình ảnh và máy ảnh kỹ thuật số: 14 bước (có hình ảnh)
Tự làm cảm biến hình ảnh và máy ảnh kỹ thuật số: Có rất nhiều hướng dẫn trực tuyến về cách xây dựng máy ảnh phim của riêng bạn, nhưng tôi không nghĩ rằng có bất kỳ hướng dẫn nào về việc xây dựng cảm biến hình ảnh của riêng bạn! Cảm biến hình ảnh có sẵn từ rất nhiều công ty trực tuyến và việc sử dụng chúng sẽ giúp thiết kế
Hình ảnh - Máy ảnh Raspberry Pi in 3D.: 14 bước (có Hình ảnh)
Hình ảnh - Máy ảnh Raspberry Pi 3D được in: Cách đây trở lại vào đầu năm 2014, tôi đã xuất bản một máy ảnh có thể hướng dẫn được gọi là SnapPiCam. Máy ảnh được thiết kế để đáp ứng với Adafruit PiTFT mới được phát hành. Đã hơn một năm trôi qua và với bước đột phá gần đây của tôi vào in 3D, tôi nghĩ rằng n
MÁY ẢNH UNICORN - Raspberry Pi Zero W NoIR Cấu hình máy ảnh 8MP: 7 bước (có hình ảnh)
UNICORN CAMERA - Raspberry Pi Zero W NoIR Camera 8MP Build: Pi Zero W NoIR Camera 8MP BuildThis hướng dẫn được tạo ra để giúp bất kỳ ai muốn có Camera hồng ngoại hoặc Camera di động thực sự tuyệt vời hoặc Camera Raspberry Pi di động hoặc chỉ muốn giải trí, heheh . Đây là cấu hình và giá cả phải chăng nhất
Ánh sáng video thân mật / Ánh sáng chụp ảnh cầm tay: 7 bước (với hình ảnh)
Ánh sáng video thân mật / Ánh sáng chụp ảnh cầm tay: Tôi biết bạn đang nghĩ gì. Bằng cách " thân mật, " Ý tôi là chiếu sáng cận cảnh trong các tình huống ánh sáng khó - không nhất thiết dành cho " các tình huống thân mật. &Quot; (Tuy nhiên, nó cũng có thể được sử dụng cho việc đó …) Là một nhà quay phim thành phố New York - hoặc