Mục lục:

Arduino XMAS Hitcounter: 6 bước (có hình ảnh)
Arduino XMAS Hitcounter: 6 bước (có hình ảnh)

Video: Arduino XMAS Hitcounter: 6 bước (có hình ảnh)

Video: Arduino XMAS Hitcounter: 6 bước (có hình ảnh)
Video: Ông nào tự tin bắn vào pha này ? #shorts 2024, Tháng mười một
Anonim
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter

Giáng sinh đang đến gần hơn, vì vậy đây là đóng góp của tôi để đưa bạn vào đúng tâm trạng. Nó là một blog hitcounter, rung chuông. Theo đúng nghĩa đen. Nó mang lại nụ cười trên khuôn mặt của bạn, mỗi khi ai đó truy cập blog của bạn.

Nó bao gồm một bảng Arduino, một cái chuông, một servo và một vài dòng mã bằng c, python và php. Hầu hết các bộ phận đều khá phổ biến và dễ lấy.

Bước 1: Công cụ và vật liệu

Công cụ và Vật liệu
Công cụ và Vật liệu

Vậy cần những gì?

  • Bảng Arduino. Tôi nhận được một Arduino Diecimila từ Adafruits. Trong khi đó, có những sản phẩm nhái thực sự rẻ và tiện dụng, ví dụ: bảng mạch thực sự thô sơ từ Thiết bị hiện đại, đặc biệt nếu bạn muốn sử dụng chúng trên bảng mạch bánh mì.
  • Một động cơ servo. Bất kỳ servo sẽ làm. Tôi lấy một cái cũ đã được sử dụng trong sở thích trước đây của tôi.
  • Một tiếng chuông. Tốt hơn là một cái đủ nhỏ để lắc nó với servo.
  • Hai tờ giấy bìa cứng. Một cái lớn để giữ chuông và một cái nhỏ để chế tạo bộ truyền động để rung chuông.
  • Dây kết nối servo với Arduino.
  • Một trang web. Trên thực tế, nó không phải là một trang web hay một blog. Trên thực tế, tất cả mọi thứ có thể được tính, sẽ hoạt động.
  • PC hoặc Mac để kết nối bảng Arduino với blog hoặc trang web.

Bạn có thể cần một mỏ hàn, nếu dây không thể kết nối trực tiếp với Arduino.

Bước 2: Lắp ráp phần cứng

Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng
Lắp ráp phần cứng

Chuông được giữ bằng một chiếc kẹp giấy chắc chắn. Kẹp giấy nhỏ được sử dụng để tạo thành một loại cánh tay gắn với động cơ servo.

Lưu ý rằng bạn muốn uốn cong chiếc kẹp giấy giữ chuông theo cách mà một chút rung lắc sẽ tạo ra tiếng kêu.

Bước 3: Sơ đồ

Sơ đồ
Sơ đồ

Không có sơ đồ thực sự. Chỉ cần gắn động cơ servo vào Arduino. Servo có ba dây:

  • vàng hoặc cam: tín hiệu
  • đỏ: VCC
  • nâu: GND

Màu đỏ và màu nâu được gắn vào các chân tương ứng trên Arduino (5V và GND). Chân màu cam được nối với chân số 2. Nó sẽ báo hiệu cho servo quay theo hướng nào. Bạn có thể muốn hàn các đầu nối nhỏ vào dây nếu dây không vừa trực tiếp với Arduino hoặc servo.

Bước 4: Lập trình Arduino

Lập trình Arduino
Lập trình Arduino

Arduino Nếu bạn chưa quen với Arduino, đây là một bảng nhỏ, được lắp ráp hoàn chỉnh với vi điều khiển AVR. Nó rất thích hợp để hack và tương tác với môi trường của bạn. Nhiều thứ khó với vi điều khiển lại dễ dàng hơn với Arduino. Một số ưu điểm:

  • không cần thiết bị lập trình riêng biệt (lập trình viên)
  • đi kèm với một môi trường phát triển tích hợp (IDE)
  • chạy trên mọi nền tảng, Windows, Mac, Linux.
  • kết nối dễ dàng với PC của bạn bằng USB
  • phần cứng là mã nguồn mở (nhưng tên Arduino thì không)
  • có một cộng đồng tuyệt vời

Bạn có thể tìm thêm thông tin tại trang web chính thức của Arduino. Hãy chắc chắn, hãy xem hướng dẫn Arduino của John để biết thêm chi tiết về cách bắt đầu với Arduino. Phần mềm nhỏ được tải lên Arduino sẽ điều khiển servo. Nó nhận từng byte đơn qua kết nối nối tiếp qua cáp USB. Nếu nó nhận giá trị là 5, nó sẽ di chuyển nhánh servo năm lần tới và lui. Vì vậy, giá trị tối đa để gửi là 255. Lập trình Ardiuno Vì vậy, tôi giả sử bạn đã tải xuống và cài đặt Arduino IDE mới nhất từ Arduino.cc. Hiện tại, nó là phiên bản 0010 Alpha. Để điều khiển servo thoải mái hơn, bạn phải tải xuống một thư viện. Bạn có thể tìm thấy nó trên Arduino Playground. Giải nén nó và đưa thư mục vào… / arduino-0010 / cứng / thư viện /.

  • Gắn Arduino vào PC của bạn bằng cáp USB.
  • Mở IDE và bắt đầu một bản phác thảo mới. Sketch là chương trình nói chuyện của Arduino. Chọn Tệp -> Mới.
  • Chọn thiết bị nối tiếp thích hợp (Công cụ -> Cổng nối tiếp). Điều này phụ thuộc vào môi trường của bạn, đối với tôi đó là /dev/tty.usbserial-A4001JAh.
  • Tải xuống tệp nguồn đính kèm và dán nó vào bản phác thảo mới. Nhấn nút lưu.
  • Nhấn nút xác minh. Điều này biên dịch bản phác thảo của bạn thành một tệp hex có thể được chuyển sang Arduino của bạn.
  • Nhấn nút tải lên để chuyển bản phác thảo của bạn sang Arduino.

Đang kiểm tra Bây giờ, hitcounter của bạn đã sẵn sàng cho một số hành động. Hãy xem nếu nó hoạt động.

  • Nhấn vào nút màn hình nối tiếp.
  • Chọn hộp văn bản bên cạnh nút gửi.
  • Nhấn phím tab và gửi nó.
  • Lúc này, cánh tay servo sẽ di chuyển về phía trước và phía sau.

Phù. Đó là phần khó nhất. Hiện tại, bạn có thể gửi một byte tới Arduino và các sóng servo theo bạn. Tiếp theo là tìm một cái gì đó mà bạn muốn kích hoạt chuông. Chúng ta đang gần hoàn tất.

Bước 5: Biến nó thành Hitcounter

Để làm cho nó trở thành một điểm nhấn cho trang web của bạn, chúng tôi cần hai đoạn mã nhỏ. Một trong hai tạo và quản lý bộ đếm và một thứ hai để lấy giá trị của bộ đếm và gửi nó đến Arduino.

Lưu ý: Nếu bạn không rành về Python hoặc PHP, các tập lệnh có thể dễ dàng được chuyển sang ngôn ngữ lập trình yêu thích của bạn. nó trở lại tệp. Đó là tất cả, đó là cần thiết. Ví dụ: tệp này có thể được lưu dưới dạng counter.php trên máy chủ của bạn. Sau đó, bạn có thể kích hoạt số lượng khi trình duyệt web trỏ tới https://www.youdomain.com/counter.php. Tôi đã đưa đoạn mã này vào blog wordpress của mình. $ hits = file ($ count_my_page); $ hit = trim ($ hits [0]); $ hit ++; $ fp = fopen ($ count_my_page, "w"); fputs ($ fp, "$ hit"); fclose ($ fp); echo $ hit; ?> Mã keo Đoạn mã tiếp theo này được sử dụng để lấy bộ đếm. Tôi đã sử dụng Python nhưng mọi thứ sẽ hoạt động. Nó mở một kết nối HTTP và tìm nạp hitcounter.txt. Nếu giá trị đã thay đổi kể từ lần tìm nạp cuối cùng, chênh lệch sẽ được tính toán và đẩy đến Arduino. Điều này được thực hiện cứ sau mười giây cho đến khi bạn ngắt đoạn script bằng crtl-c. Điều chỉnh myUrl và kết nối nối tiếp bên dưới theo nhu cầu của bạn. # # tìm nạp bộ đếm # nhập thời gian nhập urllib nhập nối tiếp nối tiếp # kết nối nối tiếp usb vào arduino ser = serial. Serial ('/ dev / tty.usbserial-A4001JAh', 9600) myUrl = 'https://tinkerlog.com/hitcounter.txt 'last_counter = urllib.urlopen (myUrl).read () while (True): _ counter = urllib.urlopen (myUrl).read () _ delta = int (counter) - int (last_counter) _ print "counter:% s, delta:% s "% (counter, delta) _ ser.write (chr (ord (chr (delta)))) _ last_counter = counter _ time.sleep (10) Tôi không thể tải lên các tệp có phần mở rộng php, vì vậy bạn phải đổi tên counterphp.txt thành counter.php. Nếu Arduino của bạn vẫn được gắn vào PC, hãy khởi động tập lệnh Python để tìm nạp bộ chuyển đổi của bạn…> python counter.py và bạn sẽ thấy đầu ra của bộ đếm. Nếu bạn trỏ trình duyệt của mình đến URL của counter.php và nhấn tải lại, bạn sẽ nghe thấy tiếng chuông liên lạc của mình. Vâng, bây giờ chúng tôi đã hoàn thành. Đã đến lúc ngả lưng và tận hưởng công việc của chúng tôi.

Bước 6: Kết luận

Phần kết luận
Phần kết luận

Đây là lần đầu tiên tôi chế tạo một thứ gì đó có các bộ phận chuyển động. Đó là bước đầu tiên để thu hẹp khoảng cách giữa thế giới ảo và thực. Và nó thực sự dễ dàng, mã được chuyển thẳng về phía trước. Ngoài ra, hầu hết các bộ phận đều nằm trong thùng rác của tôi, ngoại trừ chuông. Kết hợp mọi thứ lại với nhau và chờ ai đó đánh vào blog của tôi thật là vui.

Hy vọng bạn thích nó.

Đề xuất: