Mục lục:
- Bước 1: In nhãn Pizza
- Bước 2: Bỏ nút Arcade ra ngoài
- Bước 3: Áp dụng nhãn dán và lắp ráp lại nút
- Bước 4: Làm hộp
- Bước 5: Mạch
- Bước 6: Giao tiếp với Beagle Bone Black
- Bước 7: Mã
- Bước 8: Truyền tệp từ máy tính của bạn sang BBB
- Bước 9: Cài đặt Thư viện thích hợp vào BBB
- Bước 10: Cài đặt Thư viện I / O của Python và Adafruit
- Bước 11: Cài đặt Selenium
- Bước 12: Sử dụng Selenium với trình duyệt web không đầu
- Bước 13: Giờ ăn Pizza
Video: Nút Pizza: 13 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:33
Nam sinh năm hai đại học, người New York, kỹ thuật viên thức khuya và người thực sự lười biếng: chào mừng bạn đến với tưởng tượng của bạn. Giới thiệu bản nâng cấp cuối cùng trong công nghệ ẩm thực, Nút Pizza. Không cần phải nhấc máy để đặt bánh pizza nữa. Chỉ cần nhấn vào nút này và đợi trong khi yêu cầu giao bánh pizza đến địa chỉ của bạn.
Nút Pizza sử dụng bảng BeagleBone Black (BBB) để thực hiện công việc nặng nhọc trong dự án này. Một lần nhấn nút sẽ kích hoạt bảng chạy trình duyệt web. Trình duyệt web đăng nhập vào tài khoản Grub Hub của bạn và đặt bánh pizza từ tiệm Pizza North Beach nổi tiếng của San Francisco (nghĩa là hiện tại nút này chỉ hoạt động ở San Francisco, nhưng thành thật mà nói, bạn có thực sự muốn ở bất kỳ nơi nào khác không?) pizza, thanh toán cho bánh pizza và được giao ngay đến tận nhà của bạn. Dự án này rất đơn giản để thực hiện và không thể cưỡng lại khi sử dụng!
Các bản cập nhật trong tương lai cho dự án này bao gồm:
- Wifi
- GPS nội bộ
- Pizza Mùi chỉ để tăng cảm giác ngon miệng của bạn
Danh sách các bộ phận
- (x3) hộp bánh pizza từ cửa hàng bánh pizza yêu thích của bạn
- (x1) Nút Arcade lớn có đèn LED - 100 mm White Adafruit 1187
- (x1) Bộ mũi Proto cho BeagleBone Adafruit 572
- (x1) Điện trở 470 ohm 1/4 W RadioShack 271-1317
- (x1) Điện trở 1 k-ohm 1/4 W RadioShack 271-1321
- vinyl hoặc Giấy dán ảnh phun bóng LC (8,5 "x 11") Amazon B000VKV2H4
Tài liệu bổ sung
- Solder RadioShack 64-013
- 22 Gauge Wire RadioShack 278-1224
- Đài điều khiển ống co nhiệt 278-1611
Bước 1: In nhãn Pizza
Tìm một hình ảnh bánh pizza hấp dẫn và in nó ra giấy dính. Tôi đã sử dụng một máy cắt vinyl, nhưng một máy in tiêu chuẩn cũng sẽ hoạt động.
Bước 2: Bỏ nút Arcade ra ngoài
Nút arcade đi kèm với một công tắc được khóa vào đế của nó. Chỉ cần vặn công tắc ngược chiều kim đồng hồ và cảm thấy nó mở khóa. Kéo công tắc ra từ bên trong cổ chạm của nút (chạm là các rãnh bạn nhìn thấy trong các vật thể như ốc vít). Sẽ có một đèn LED được gắn vào công tắc. Tiếp theo, tháo chiếc vòng nhỏ màu đen ra khỏi cổ có dây để có thể kéo phần đế của nút ra xa. Bên trong cổ có hai mấu màu trắng. Đẩy chúng vào trong và xuống để đẩy mặt nút nhựa ra khỏi cổ. Bây giờ tất cả những gì còn lại là mặt nút rõ ràng được gắn vào nền trắng với các tab. Sử dụng một tuốc nơ vít nhỏ để cạy mặt nút ra khỏi nền trắng.
Bước 3: Áp dụng nhãn dán và lắp ráp lại nút
Cắt nhãn dán ra và gắn vào nền trắng mịn. Bằng cách này, nó sẽ được nhìn thấy qua mặt nút rõ ràng. Lắp ráp lại nút.
Bước 4: Làm hộp
Tôi bắt đầu với những hộp bánh pizza phẳng mà tôi mua từ cửa hàng bán container. Tuy nhiên, hãy thoải mái sử dụng những hộp bánh pizza yêu thích của bạn! Phần đế này yêu cầu ba hộp bánh pizza xếp chồng lên nhau, điều này sẽ chứa nút arcade khá lớn và chứa các thiết bị điện tử. Bắt đầu với ô dưới cùng. Tìm và đánh dấu tâm của hộp bằng thước, và dùng cốc để vẽ một vòng tròn xung quanh nó. Cắt lỗ bằng dao X-Acto. Cắt một lỗ ở trên cùng của hộp dưới cùng, và các lỗ ở cả trên và dưới của hộp giữa và trên cùng. Chồng các hộp lại với nhau và dán chúng lại với nhau bằng súng bắn keo nóng. Đặt nút trên cùng để đảm bảo công tắc vừa với lỗ.
Bước 5: Mạch
Mạch này khá thẳng về phía trước. Khi được nhấn, nút arcade sẽ kích hoạt cả mã chạy và đèn LED bên trong nút sáng lên.
Bước 6: Giao tiếp với Beagle Bone Black
Dự án này là trải nghiệm đầu tiên của tôi với BeagleBone Black Board. Theo tôi, BeagleBoard khá giống với bảng RaspberryPi nhưng có nhiều chân gpio hơn. Đọc thêm về BeagleBoard tại trang cộng đồng chính thức của nó và khám phá những điểm khác biệt chính giữa BeagleBoard và Raspberry Pi tại đây.
Dự án này sử dụng bo mạch Rev C BeagleBone Black chạy trên thẻ micro SD 16G được flash với môi trường Debian. Bạn có thể sử dụng bất kỳ kích thước thẻ micro SD nào lớn hơn 8G. Mặc dù BeagleBone Black Board mới có bộ xử lý tích hợp 4G, nhưng môi trường máy tính để bàn của Debian đòi hỏi nhiều không gian lưu trữ hơn. Để tương tác với bo mạch, chỉ cần cắm nó vào máy tính của bạn bằng cáp micro HDMI to USB đi kèm với bo mạch của bạn. 'Đèn led người dùng' nằm bên cạnh cổng ethernet sẽ nhấp nháy theo một mẫu được lập trình để bắt chước nhịp đập của con người (các nhà sản xuất beagle thật tuyệt, đúng không?) Và biểu tượng của bảng sẽ xuất hiện trên Màn hình của bạn. Nếu bạn đang sử dụng máy Mac, bạn có thể lập trình bảng của mình theo hai cách khác nhau:
PHƯƠNG PHÁP 1: CHẤM DỨT
Mở thiết bị đầu cuối và nhập vào dòng lệnh
Nếu khi bạn được nhắc nhập mật khẩu, hãy nhập
nguồn gốc
** Nếu điều này không hiệu quả do "khóa ssh vi phạm" **
Nhập vào dòng lệnh
rm -f.ssh / known_hosts
** Nếu điều này vẫn không hoạt động **
Nhập vào dòng lệnh
sudo ssh [email protected]
PHƯƠNG PHÁP 2: MÔI TRƯỜNG DEBIAN
Bạn cũng có thể vnc vào môi trường máy tính để bàn của bo mạch và lập trình nó từ đó. Làm theo các bước dưới đây để thực hiện việc này.
- Tải xuống Kết nối Máy tính Từ xa cho mac từ đây.
- Mở Kết nối Máy tính Từ xa và trong hộp nhập liệu cho 'Máy tính', hãy nhập '192.168.7.2'
- Bên trong cửa sổ bật lên màn hình từ xa, hãy nhập 'root' cho cả tên người dùng và mật khẩu.
- Bạn sẽ thấy màn hình nền của Beagle Board.
Bước 7: Mã
Mã này tự động đăng nhập vào tài khoản GrubHub cá nhân của bạn, điều hướng đến menu cho North Beach Pizza và đặt một bánh pizza pho mát lớn. Tất cả đều được kích hoạt chỉ bằng một nút bấm!
Nó thực hiện tất cả điều này bằng cách tương tác với các trang web bằng Selenium bằng trình duyệt web không đầu PhantomJS. Selen là gì? Đó là một gói phần mềm thực hiện tất cả các thao tác nhấp qua các trang web cho bạn (hãy nhớ rằng, dự án này dành cho những kẻ lười biếng cuối cùng). Trình duyệt web không đầu là gì? Tìm hiểu thêm ở đây, nhưng tóm lại, đó là một trình duyệt web (hãy nghĩ đến Safari, Firefox và, tôi dám nói, Netscape) không có giao diện người dùng đồ họa. Điều này làm cho việc tự động hóa điều hướng trang web nhanh hơn RẤT NHIỀU (bạn đang thèm ăn pizza, vì vậy bạn muốn đơn đặt hàng của mình được gửi nhanh nhất có thể).
Những thứ bạn sẽ phải chỉnh sửa trong mã:
- Thông tin đăng nhập GrubHub, bao gồm tên người dùng và mật khẩu của bạn
- Thông tin thẻ tín dụng
Bước 8: Truyền tệp từ máy tính của bạn sang BBB
Bạn có thể chuyển các tệp như 'code.py' từ máy tính của mình sang BBB bằng các lệnh đơn giản trong môi trường đầu cuối.
Nói chung, cách chuyển tệp từ máy tính của bạn sang BBB trông giống như
scp /home/filename.file user @ IPAddress: / directory
Chia nhỏ điều này:
- 'scp': Lệnh 'scp' cho phép sao chép tệp vào, từ hoặc giữa các máy chủ khác nhau. Nó sử dụng ssh để truyền dữ liệu và cung cấp xác thực và mức độ bảo mật tương tự như ssh.
- '/home/filename.file': Vị trí tệp trên máy tính của bạn.
- 'user @ IPAddress: / directory': Thông tin đăng nhập của BBB và nơi bạn muốn sao chép tệp vào.
Ví dụ: giả sử tôi đã tải xuống và lưu 'code.py' vào Màn hình máy tính của mình. Bây giờ tôi muốn chuyển nó sang Màn hình nền của BBB. Tôi sẽ mở thiết bị đầu cuối máy tính của mình và nhập
scp /Users/dot/Desktop/code.py [email protected]: / home / root / Desktop /
Đừng sao chép ví dụ này từng chữ một, vì đường dẫn trên máy tính của bạn và BBB sẽ khác với đường dẫn của tôi.
Tôi tìm thấy thông tin này từ một trang web hữu ích ở đây, nơi bạn cũng có thể tìm hiểu cách chuyển các thư mục nội dung.
Bước 9: Cài đặt Thư viện thích hợp vào BBB
Bạn sẽ phải cài đặt một vài thư viện để mã hoạt động bình thường. Để cài đặt bất kỳ thứ gì trên BBB của bạn, nó phải:
- Được cắm vào ethernet
- Được hỗ trợ bởi máy tính của bạn (nếu bạn đang giao tiếp với bảng của mình thông qua thiết bị đầu cuối)
- Được cấp nguồn bởi ổ cắm điện 5V (nếu bạn đang kết nối bo mạch với màn hình)
Cá nhân tôi đã cấp nguồn cho bo mạch của mình thông qua máy tính của mình và lập trình nó thông qua lệnh ssh, lệnh này đã được mô tả trước đây trong "Giao tiếp với Beagle Bone Black".
Bạn sẽ phải cài đặt:
- Python
- Thư viện trăn GPIO của Adafruit
- Selen
- Trình duyệt web không đầu PhantomJS
Bước 10: Cài đặt Thư viện I / O của Python và Adafruit
Beaglebone Black Board có rất nhiều chân gpio, tổng cộng là 65 chân, khiến nó trở nên độc nhất trong số nhiều máy tính mini và bo mạch vi xử lý trên thị trường. Hai thư viện gpio tương thích với các chân gpio của Beagle là thư viện tích hợp sẵn của BoneScript và thư viện Python GPIO của Adafruit. Vì cá nhân tôi cảm thấy thoải mái hơn với Python, tôi đã quyết định sử dụng thư viện Python GPIO. Thư viện tải xuống khá đơn giản. Đầu tiên, ssh vào Beagle Board và cài đặt các phụ thuộc sau:
sudo ntpdate pool.ntp.org
sudo apt-get update sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
Sau đó gõ lệnh sau vào cài đặt thư viện gpio python
sudo pip cài đặt Adafruit_BBIO
Bước 11: Cài đặt Selenium
Nói một cách đơn giản, Selenium tự động hóa các trình duyệt web. Những gì dự án này chủ yếu sử dụng là Selenium WebDriver, nó chấp nhận các lệnh, gửi chúng đến một trình duyệt như Chrome hoặc Firefox và truy xuất kết quả. Dự án này sử dụng các liên kết python của Selenium. Tôi có thể đã sử dụng liên kết javascript, nhưng tôi thích giữ mã bằng một ngôn ngữ duy nhất và vì tôi quyết định sử dụng python để điều khiển các chân GPIO của BBB, tôi cũng đã sử dụng python cho trình quét web của mình.
Để cài đặt selen, hãy ssh vào BBB và nhập vào dòng lệnh
sudo pip cài đặt selen
Bước 12: Sử dụng Selenium với trình duyệt web không đầu
Để cài đặt PhantomJS để bạn có thể sử dụng trình duyệt web không đầu PhantomJS, hãy ssh vào BBB và nhập vào dòng lệnh
sudo apt-get install build-essential chrpath git-core libssl-dev
libfontconfig1-dev git clone git: //github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9./build.sh
Các hướng dẫn này đến từ trang web PhantomJS tại đây. Tôi đã gặp phải nhiều sự cố khi cố gắng cài đặt PhantomJS, nhưng cuối cùng đã thành công khi thực hiện theo các lệnh này.
Bước 13: Giờ ăn Pizza
Bây giờ hãy ngồi lại và thưởng thức chiếc bánh pizza của bạn.
Đề xuất:
Bàn phím nút LED Arduino điều khiển xử lý hoạt ảnh: 36 bước (có hình ảnh)
Bàn phím nút LED Arduino điều khiển hoạt ảnh xử lý: Cái gì Bàn phím này được làm bằng PCB và các thành phần khác do Sparkfun sản xuất. Nó được điều khiển bởi một Mega Arduino. Mỗi nút đều đẹp và nhỏ và tạo cảm giác thoải mái khi nhấn, và nó có đèn LED RGB bên trong! Tôi đã sử dụng nó để điều khiển các hình ảnh động, tôi '
Giao diện hai dây (DMX) với màn hình và các nút: 5 bước (có hình ảnh)
Giao diện hai dây (DMX) với màn hình và các nút: DMX là một giao thức được sử dụng để điều khiển các thiết bị chiếu sáng sân khấu và các hiệu ứng đặc biệt. Mỗi thiết bị có (các) kênh riêng mà nó phản hồi. Người dùng có thể chọn kênh này bằng công tắc DIP hoặc màn hình có các nút. Có nhiều cách để chọn một
Loa Bluetooth để bàn có hình ảnh âm thanh, các nút cảm ứng và NFC.: 24 bước (có hình ảnh)
Loa Bluetooth để bàn có hình ảnh âm thanh, các nút cảm ứng và NFC.: Xin chào! Trong Tài liệu hướng dẫn này, tôi sẽ trình bày cách tôi tạo ra chiếc loa Bluetooth để bàn này có tính năng Hình ảnh hóa âm thanh tuyệt vời với các nút cảm ứng và NFC. Có thể dễ dàng ghép nối với các thiết bị Có hỗ trợ NFC chỉ bằng một cú chạm. Không có nút vật lý nào
Chuột Doodler ánh sáng RGB Ba nút Mặt trời.: 11 bước (có hình ảnh)
Sun Three Button Light Doodler Mouse RGB Light: Tôi gặp Lori Stotko và Stuart Nafey http://lightdoodles.com/ tại Makers Faire Auditions năm nay. Họ có những chiếc bút Light tuyệt vời mà họ đã làm để vẽ nguệch ngoạc. Tôi quyết định làm một số khi tôi về nhà, và nhớ lại con chuột ba cúc của Mặt trời cũ mà tôi
Buồng ảnh Nút lớn màu đỏ: Teensy LC: 3 bước (có hình ảnh)
Photo Booth Nút đỏ lớn: Teensy LC: Cách đây vài năm, tôi đã xây dựng một Photo Booth ngoài trời tự làm cho một đám cưới bạn bè. Tôi đã sử dụng " gian hàng " một số lần cho các sự kiện khác nhau, nhưng muốn thay đổi thiết lập để có cấu hình đơn giản hơn. Về cơ bản, một dSLR trên một giá ba chân và một chiếc đùi