Mục lục:

Pi Zero Talking Radio: 7 bước (có hình ảnh)
Pi Zero Talking Radio: 7 bước (có hình ảnh)

Video: Pi Zero Talking Radio: 7 bước (có hình ảnh)

Video: Pi Zero Talking Radio: 7 bước (có hình ảnh)
Video: LỜI NÓI DỐI CỦA BA #Shorts 2024, Tháng bảy
Anonim
Image
Image
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio

Đây là một đài phát thanh để bàn DeWald cuối những năm 1940 mà tôi đã cho một cuộc sống mới bằng cách sử dụng Raspberry Pi Zero, một Blinkt! Dải đèn LED và một cặp Loa PC. Nó đọc ra các thông báo từ một loạt các dịch vụ được kết nối internet bằng cách sử dụng công cụ chuyển văn bản thành giọng nói (TTS) Pyvona và tích hợp IF This Then That (IFTTT). Các đèn LED sáng đáng kinh ngạc và chiếu sáng mặt số của đài phát thanh một màu khác tùy thuộc vào các từ khóa trong văn bản thông báo, ví dụ: "youtube" = Red.

Tôi đã nhặt được chiếc radio nhỏ ngọt ngào này tại một buổi bán ủng hộ xe hơi vào mùa hè với giá £ 3 - Tôi ngay lập tức bị thu hút bởi kích thước nhỏ gọn và thiết kế cổ điển của nó, đồng thời tìm cách nhìn thấy tiềm năng của nó thông qua ngoại thất mờ nắng và nhiều vết nứt! Tôi đã muốn tạo ra "một cái gì đó tươm tất cho phòng khách" từ nãy đến giờ và đây là điểm khởi đầu lý tưởng. Tôi đã thử nghiệm với thông báo chuyển văn bản thành giọng nói trước đây trong dự án Rabbit Pi và hy vọng sẽ xây dựng dựa trên những gì tôi đã học được để tạo ra thứ gì đó "hoạt động" hàng ngày.

Trong trường hợp bạn không thể xem video được nhúng, hãy truy cập tại:

Bước 1: Blinkty Pi

Blinkty Pi
Blinkty Pi
Blinkty Pi
Blinkty Pi

Tôi đã chọn Pi Zeros đầu tiên của mình gần đây và ngay lập tức ngạc nhiên bởi kích thước nhỏ bé của chúng! Sau khi hàn đầu cắm GPIO và kết nối các bộ điều hợp, bộ điều hợp đầu tiên đã sẵn sàng hoạt động. Ban đầu tôi định làm một chiếc Rabbit Pi cải tiến nhưng sau một thời gian, điều này cảm thấy giống như công việc hơn là thú vị nên tôi đã gác lại - mặc dù không phải trước khi tôi bắt đầu thử nghiệm với Unicorn pHAT, ma trận 4x8 đèn LED có thể lập trình, đó là một đống tuyệt đối của niềm vui! Nhược điểm duy nhất là việc sử dụng pHAT làm phức tạp thiết lập âm thanh và tôi muốn giữ cho dự án tiếp theo của mình thực sự đơn giản.

Mọi thứ đã rơi vào đúng vị trí tại Cambridge Raspberry Jam vào tháng 9 khi tôi nhìn thấy Blinkt! được bày bán tại gian hàng Pimoroni - nó giống như Unicorn pHAT nhưng với một hàng 8 đèn LED, có kích thước hoàn hảo để vừa với tiêu đề GPIO của pi zero. Nó đi kèm với vô số tài liệu và ví dụ và được thiết lập và chạy ngay lập tức - bây giờ đã đến lúc bắt đầu tập hợp phần còn lại của mã.

Bước 2: Mã nói chuyện

Mã nói chuyện
Mã nói chuyện

Tôi bắt đầu với một bản sao của mã chính từ Rabbit Pi, vì mã này đã có thông tin đăng nhập văn bản thành giọng nói Ivona của tôi được lưu trữ trong đó. Bạn cần thiết lập tài khoản nhà phát triển Ivona trước khi sử dụng dịch vụ, nhưng quá trình này rất đơn giản như tôi đã ghi lại trước đây.

Bước tiếp theo là cài đặt Pyvona, trình bao bọc Python để tích hợp với dịch vụ Ivona TTS, không thể dễ dàng hơn (pip install pyvona).

Với điều này, tôi bắt đầu sửa đổi mã Rabbit Pi, lấy ra các tham chiếu về điều khiển động cơ và chụp ảnh tự sướng để lại cho tôi chỉ những bit đọc ra thông báo từ dòng Chủ đề của thư Gmail. Sự phát triển quan trọng với mã này là thêm vào một loạt các câu lệnh IF để tìm kiếm các từ khóa cụ thể trong các thông báo, do đó Blinkt! sẽ phát sáng các màu khác nhau tùy thuộc vào thông điệp.

Điều này khiến tôi mất một lúc vì tôi vẫn đang tìm kiếm bằng Python, nhưng đã xác định các từ khóa của mình ("Có mây", "Hoàng hôn", "Mưa rào", "Facebook", "Twitter", "Youtube" và "Nắng") Tôi đã có thể điều khiển Blinkt! màu sắc tùy thuộc vào văn bản được đọc ra.

Mã đơn giản, nếu không phù hợp, tôi đã sử dụng là trên GitHub, mặc dù tôi đã thêm nhiều từ khóa và màu sắc hơn! Tôi đã thử nghiệm nó bên ngoài vỏ bằng loa chạy bằng pin - phần thiết lập âm thanh sau này sẽ được bổ sung thêm. Bước cuối cùng là đặt tập lệnh python, radiot.py, để chạy khi khởi động.

Bước 3: Trung tâm thông báo

Trung tâm thông báo
Trung tâm thông báo

Bây giờ Pi có thể đọc ra các tin nhắn một cách đáng tin cậy và phát sáng các màu khác nhau, tôi cần thiết lập các thông báo để chúng đến một cách tự nhiên - tôi nhớ trong một bộ phim hoạt hình Tom & Jerry cũ, đài thỉnh thoảng sẽ phát lên (Nhật ký của Jerry (1949) - cùng kỳ với đài phát thanh!) và đây là hiệu ứng mà tôi theo đuổi, đó là nó sẽ nằm trong góc và trông đẹp mắt, thỉnh thoảng sáng lên và đọc ra các thông báo mà tôi sẽ không nhận được trên điện thoại của mình.

Đầu tiên, tôi thiết lập một tài khoản Gmail riêng để nhận email thông báo - điều này có nghĩa là tôi sẽ không bị tấn công bởi các thông báo thư mới hoặc làm ô nhiễm hộp thư đến hiện tại của tôi với hàng trăm thư được tạo tự động.

Tiếp theo, tôi chuyển sang IFTTT (IF This Then That) để thiết lập tự động hóa. Với IFTTT, bạn có thể dễ dàng kết nối nhiều "Kênh" với tài khoản của mình và đặt chúng tương tác với nhau bằng cách sử dụng "Công thức nấu ăn", trong trường hợp này là kết hợp nhiều phương tiện truyền thông xã hội và các hành động trong thế giới thực thành một luồng email. Tôi đã tùy chỉnh phần "Then That" của Recipes để tất cả chúng sẽ gửi email đến tài khoản Gmail mà tôi đã thiết lập để nhận thông báo và sử dụng phần "Thành phần" để đảm bảo rằng thông tin quan trọng sẽ được đưa vào email Subject., phần được đọc ra. Hiện tại, tôi đã thiết lập các công thức IFTTT sau, nhưng những công thức này luôn được thêm vào!

  • Mỗi ngày vào lúc 9 giờ tối, hãy gửi thông tin thời tiết ngày mai qua email
  • Mỗi ngày tại Sunset gửi ngày và giờ qua email
  • NẾU tôi được gắn thẻ trong ảnh Facebook, hãy gửi email
  • NẾU điện thoại của tôi được cắm / rút phích cắm, hãy gửi phần trăm pin qua email
  • NẾU tôi nhập một khu vực địa lý, hãy gửi email "MisterM đã đến nơi làm việc!"
  • NẾU tôi tải lên video YouTube, hãy gửi email
  • NẾU một người cụ thể tweet, hãy gửi nó qua email
  • NẾU một sự kiện lịch google bắt đầu, hãy gửi nó qua email
  • NẾU thời tiết hiện tại chuyển sang mưa, hãy gửi email ("Coi chừng, trời sắp mưa!"
  • NẾU ổ cắm thông minh được bật hoặc tắt, hãy gửi email
  • NẾU nhận được tin nhắn SMS mới, hãy gửi nó qua email
  • NẾU pin điện thoại giảm xuống dưới 15%, hãy gửi email ("Sạc điện thoại đi đồ ngốc")
  • NẾU tôi có một người theo dõi Twitter mới hoặc được đề cập, hãy gửi email

Đó là sự kết hợp tuyệt vời giữa các sự kiện hàng ngày có thể dự đoán được và các thông báo bất ngờ - yêu thích của tôi là thông báo Hoàng hôn, thật thú vị vào thời điểm này trong năm khi xem thời gian của nó thay đổi hàng ngày như thế nào. Các thông báo trên Twitter là thú vị nhất, tại thời điểm này, nó đọc ra bất kỳ tweet mới nào từ "Beef & Dairy Network", "Very British Problems", "My Sweary Cat" và "Henry Thoreau" (mặc dù một số trong số này được chuyển sang ứng dụng IFTTT trong một công ty lịch sự). Khả năng đọc các tài khoản Twitter cụ thể làm cho nó thực sự linh hoạt và chúng có thể được tùy chỉnh thông qua IFTTT thay vì phải lập trình lại Pi mỗi lần.

Bước 4: Tùy chọn âm thanh

Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh
Tùy chọn âm thanh

Tiếp theo, tôi cần phân loại âm thanh, với hai thách thức! Đầu tiên làm thế nào để lấy âm thanh ra khỏi Pi. Không giống như người anh em lớn hơn của nó, Pi Zero không có đầu ra âm thanh 3,5 mm, vì vậy tôi cần sử dụng một số loại bộ chuyển đổi. Ban đầu, tôi nghĩ mình sẽ sử dụng đầu nối HDMI sang VGA + Audio nhưng điều này có vẻ quá mức cần thiết (và tôi cần nó cho một dự án khác!), Vì vậy tôi đã sử dụng bộ chuyển đổi âm thanh USB giá rẻ. Điều này khá dễ thiết lập, chỉ là một trường hợp đặt card âm thanh USB làm thiết bị ALSA mặc định trên Pi. Điều này có nghĩa là tôi cần phải bao gồm một trung tâm USB để chứa bộ điều hợp WiFi, nhưng tôi đã cố gắng tháo dỡ và sử dụng lại một cái cũ mà tôi đã đặt xung quanh.

Thứ hai, tôi cần chọn một bộ khuếch đại / kết hợp loa sẽ cho âm thanh chất lượng tốt và được bật liên tục. Trước đây tôi đã sử dụng loa chạy bằng pin nhưng cần sạc thường xuyên, những loa này sẽ không tốt cho việc sử dụng "luôn bật", ngoài ra chúng thường có tiếng rít nền đáng chú ý. Trước đây, tôi cũng đã từng ăn thịt các đế cắm ipod cũ, nhưng chúng có xu hướng có "tính năng" tiết kiệm năng lượng và bị tắt sau một vài phút im lặng.

Cuối cùng thì tôi đã mua một thứ mới, một cặp loa PC với giá hời là 6,99 bảng. Tôi không mong đợi quá nhiều nhưng chất lượng âm thanh hoàn toàn ổn, không có hiện tượng rít hay mất thời gian. Phần thưởng bổ sung của loa PC là chúng bao gồm công tắc bật / tắt và nút xoay âm lượng, tôi hy vọng có thể kết nối với các điều khiển ban đầu của radio. Tất cả đều hoạt động trên băng ghế dự bị, vì vậy bây giờ đã đến lúc lắp nó vào hộp đựng!

Bước 5: Phù hợp retro

Phù hợp retro
Phù hợp retro
Phù hợp retro
Phù hợp retro
Phù hợp retro
Phù hợp retro

Khi lần đầu tiên tôi mang radio về nhà, tôi đã loại bỏ các mạch ban đầu, ở những nơi theo nghĩa đen, là bánh mì nướng. Tuy nhiên, tôi rất ấn tượng với cấu trúc ban đầu, rõ ràng là nó được thiết kế để dễ dàng tháo dỡ và cố định vì sau khi tháo một vài bu lông, toàn bộ cụm lắp ráp trượt ra trên một loại khung. Tôi quyết định sử dụng cách tiếp cận tương tự và đặt các thành phần mới lại với nhau trên một đế sau đó có thể trượt vào vỏ và được bảo mật như ban đầu.

Tôi bắt đầu với một giá gỗ mỏng từ giá đĩa DVD cũ, cắt nó theo kích thước và khoan lỗ cho các bu lông của thùng máy. Tiếp theo, tôi tháo các loa, cắt các hộp nhựa bằng cưa sắt và dụng cụ quay. Các loa có đường nét mảnh mai được cố định vào đế gỗ bằng giá đỡ 90 độ làm từ Meccano. Tiếp theo là mạch khuếch đại - do hạn chế về không gian nên điều này rất tiếc cần phải được lắp ngược và nâng lên khoảng một inch so với đế. Tôi đã phải xây dựng một số kiểu sắp xếp cột trụ để hỗ trợ và cố định bảng, nhưng lại gặp khó khăn với việc làm thế nào để làm điều này một cách gọn gàng. Giải pháp lý tưởng nằm ngay dưới mũi tôi - một cây bút chì màu! Tôi cắt các phần của bút chì theo kích thước, sau đó lắp chúng vào các lỗ đã khoan trên đế. Điều hoàn hảo khi sử dụng bút chì màu là phần "chì" ở giữa có thể thực sự dễ dàng khoan ra ngoài, để lại một lỗ thuận tiện cho các vít của bảng mạch.

Tôi đã sử dụng kết hợp các mảnh ghép Meccano và Lego để làm giá đỡ đỡ chính Pi và thu dọn các dây dẫn bị lạc bằng dây cáp. Các công tắc âm lượng và bật / tắt nằm xa nhau trên bảng mạch của loa hơn là các lỗ trên hộp đài (bạn không thể có tất cả mọi thứ) vì vậy tôi đã mở rộng chúng bằng cách sử dụng các phần của một quả bóng nhựa rỗng.

Bước 6: Bài tập tình huống

Bài tập tình huống
Bài tập tình huống
Bài tập tình huống
Bài tập tình huống
Bài tập tình huống
Bài tập tình huống

Như tôi đã đề cập trước đó, trường hợp vô tuyến đang ở trong tình trạng tồi tệ, vì vậy tôi đã vá các lỗ và vết nứt tồi tệ nhất bằng cách sử dụng polyfilla và chà nhám lại. Tôi quyết định chọn một màu kem đẹp cho lớp sơn, để phối hợp với màu nâu của mặt đồng hồ điều chỉnh. Sơn được tuyên bố là "sơn lót và sơn trong một" nhưng tôi đã sơn cho nó một vài lớp sơn lót trước tiên chỉ để an toàn. Các núm điều chỉnh đã mất một chút thời gian cọ rửa (hơn 60 năm bẩn!) Nhưng vẫn hoạt động tốt - tôi chỉ cần cố định núm điều chỉnh màu kem ban đầu vào chính mặt số bằng một chốt vì nó không được kết nối với bất kỳ thành phần nào.

Sau khi lớp sơn đã cứng lại, đã đến lúc lắp tất cả lại với nhau - thường là phần của dự án kiểm tra sự kiên nhẫn của tôi nhiều nhất! Lần này mọi việc diễn ra rất suôn sẻ, vì tất cả những công việc khó khăn đã được thực hiện trên đế, tất cả những gì tôi phải làm là trượt bộ phận lắp ráp vào vỏ, cố định nó bằng bu lông và vặn các núm vặn.

Nắp sau của chiếc đài bị mất nên tôi đã làm một cái mới từ một khung ảnh cũ, sơn nó cùng màu kem.

Bước 7: Radio Times

Radio Times
Radio Times
Radio Times
Radio Times
Radio Times
Radio Times

Đây là một dự án thực sự thú vị để xây dựng, thật tốt khi giữ mọi thứ khá đơn giản và tập trung vào việc làm cho nó sạch sẽ nhất có thể. Đôi khi tôi bị cám dỗ để thêm micrô để tích hợp Alexa và thậm chí còn cân nhắc nghiêm túc việc xây dựng trong Chromecast Âm thanh (dành cho podcast thời gian mới yêu thích của tôi theo phong cách radio cũ) nhưng tôi rất vui vì tôi đã giữ nó đơn giản và Tôi vui mừng với kết quả.

Bây giờ nó được lắp đặt trên một cái loa ở góc phòng khách, thỉnh thoảng sáng lên và nói như tôi mong muốn. Nhược điểm nhỏ duy nhất là mặt số mờ màu kem & nâu khiến việc thể hiện dải màu rực rỡ của Blinkt trở nên khó khăn hơn! Nó khá rõ ràng đối với thông báo hoàng hôn (màu cam) và tin nhắn văn bản (màu tím) nhưng thông báo thời tiết hơi giống nhau - tôi chỉ cần thử nghiệm với các mã màu RGB khác nhau mà tôi nghĩ!

Nếu bạn thích dự án này và muốn xem thêm, bạn có thể xem trang web của tôi để biết thông tin cập nhật về dự án đang tiến hành tại bit.ly/OldTechNewSpec, tham gia trên Twitter @OldTechNewSpec hoặc đăng ký kênh YouTube đang phát triển tại bit.ly/oldtechtube - give một số công nghệ cũ của bạn một thông số kỹ thuật mới!

Cuộc thi nhà xây dựng IoT
Cuộc thi nhà xây dựng IoT
Cuộc thi nhà xây dựng IoT
Cuộc thi nhà xây dựng IoT

Giải nhì trong cuộc thi Nhà xây dựng IoT

Đề xuất: