Mục lục:
- Bước 1: Thành phần nhựa
- Bước 2: Chia nhỏ các thành phần không được in 3D
- Bước 3: Điện tử
- Bước 4: Lắp ráp
- Bước 5: Mã
- Bước 6: Tập tin
Video: Bộ sạc điện thoại tự động: 6 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:35
"Hướng dẫn này được tạo ra để đáp ứng yêu cầu dự án của Makecourse tại Đại học Nam Florida (www.makecourse.com)"
Ý tưởng đằng sau dự án này là tạo ra một thiết bị có thể sạc điện thoại, sau đó rút phích cắm khi điện thoại đạt 100%. Điều này sẽ ngăn chặn vấn đề sạc quá mức.
Bước 1: Thành phần nhựa
Có một số thành phần đã được sử dụng được in 3D. Các thành phần này bao gồm một đế, một giá đỡ cho bộ sạc, một giá đỡ và bộ bánh răng (một bánh răng bình thường và một bộ phận tuyến tính thay đổi chuyển động quay thành chuyển động thẳng) và một cơ sở để mọi thứ hoạt động. Các thành phần này sẽ được giải thích trong các đoạn sau. Theo thứ tự ngoại hình
Giá đỡ bộ sạc
Mục đích của việc này là để giữ bộ sạc điện thoại, hoặc ít nhất là cung cấp cho nó một cơ sở tốt hơn và bằng phẳng.
Cơ sở
Phần đế có các vòng cho giá đỡ điện thoại cũng như rãnh cho bộ bánh răng.
Đế giữ điện thoại
Giữ điện thoại, rõ ràng
Điện thoại Arm
Di chuyển và giữ điện thoại
Rack và Pinion Gear Set
Dùng để di chuyển bộ sạc điện thoại qua lại
Bước 2: Chia nhỏ các thành phần không được in 3D
Đây là những thành phần đã được mua cho dự án hoặc đã được sở hữu. Đối với một số phần tôi đã liên kết với chúng / các mặt hàng tương tự trên amazon, nhưng hãy thoải mái mua chúng ở bất cứ đâu.
Micro Servo:
Servo chuẩn 0-180:
Mô-đun nối tiếp Bluetooth HC-05: https://www.amazon.com/HC-05-Bl Bluetooth-Pass-th nhám…
Điện thoại và bộ sạc điện thoại
Arduino
Breadboard
Hộp hoặc thùng cho đế
Cảm biến cảm ứng:
Bước 3: Điện tử
Mặc dù vậy, mạch cho dự án này có thể yêu cầu một số, chủ yếu là do mô-đun HC-05. Nhiều mô-đun thuộc loại này có tốc độ khoảng 3,3V đến 6V, nằm trong phạm vi hoạt động của Arduino. Tuy nhiên, đối với giao tiếp nối tiếp, chân Rx đôi khi hoạt động tốt hơn chỉ với 3,3V. Như đã thấy trong sơ đồ trên, hai servo được nối với chân Vin trên Arduino. Điện áp bổ sung này có thể được cung cấp bởi bất cứ thứ gì, tôi đã sử dụng pin 9 volt. Cảm biến cảm ứng đã được cắm vào nguồn 5V trên Arduino. Điều này là do tất cả các thành phần gặp sự cố khi chạy ở cùng một điện áp. Cảm biến cảm ứng được gắn vào chân 2 nên nó có thể được sử dụng như một chân ngắt. Sau đó, mô-đun bluetooth được kết nối với các chân Rx và Tx để giao tiếp nối tiếp. Giữa chân Rx trên mô-đun và Tx trên Arduino là một điện trở 2 kilo ohm với một kilo ohm nối đất. Điều này giúp điều chỉnh điện áp đi vào.
Bước 4: Lắp ráp
Việc lắp ráp khá đơn giản.
- với một số loại keo siêu dính, gắn các servo của bạn vào vị trí của chúng, một cho bánh răng bằng vết cắt trên đế và một gần vị trí đế của điện thoại.
- Gắn cảm biến cảm ứng vào giá đỡ điện thoại để nó có thể biết khi nào điện thoại ở đó.
- Sau đó gắn bánh răng và cánh tay vào các servo tương ứng của chúng
- Đảm bảo rằng dây dẫn không ảnh hưởng đến các thành phần khác khi bạn lắp các thiết bị điện tử của mình vào
Bước 5: Mã
Có ba bộ mã sẽ được trình bày, một mã cho Arduino, được tạo trong IDE Arduino và hai mã được tạo trong Android Studio. Các ứng dụng Android đều giống nhau, ngoại trừ một ứng dụng đầy đủ theo dõi thời lượng pin và một ứng dụng thì không. Cái thứ hai dành cho mục đích thử nghiệm.
Mã Arduino
Điểm chính của mã này là vận hành cảm biến cảm ứng và động cơ, nó nhận lệnh từ điện thoại và thực hiện theo lệnh đó.
#include // gọi thư viện servo để chúng ta có thể điều khiển hai servo servosServo; Servo servo2; // tạo hai đối tượng servo cho mỗi động cơ servo int a = 0; // biến theo dõi để kiểm tra int q = 0; // một biến cho phép có độ trễ trước khi quá trình plugggin bắt đầu char c; // biến chứa thông điệp nối tiếp từ điện thoại void setup () {attachmentInterrupt (digitalPinToInterrupt (2), AH, FALLING); // đính kèm một ngắt đang rơi để biết chính xác khi nào cảm biến chạm xem khi nào điện thoại đang được đưa ra servo1.attach (10); servo2.attach (9); // khởi tạo hai servos Serial.begin (9600); // bắt đầu giao tiếp nối tiếp với tốc độ tương tự như tốc độ của mô-đun bluetooth servo2.write (20); // tự động đặt servos thành một vị trí bắt đầu servo1.write (180); }
void loop () {
if (Serial.available ()) {// điều này kiểm tra xem có thứ gì đến từ điện thoại qua các chân nối tiếp Tx và Rx c = Serial.read (); // đọc nội dung đến từ if (c == 't') {// nếu thiết bị nối tiếp đọc tại thời điểm đó có nghĩa là điện thoại đã được sạc đầy, quá trình rút phích cắm sẽ bắt đầu servo2.write (120); // rút phích cắm bộ sạc trễ (5000); // đợi để đảm bảo có thời gian để loại bỏ servo1.write (110); // di chuyển điện thoại sang vị trí thẳng đứng để báo hiệu //Serial.println(" tại đây "); mountInterrupt (digitalPinToInterrupt (2), AH, FALLING); // gắn lại ngắt}} if (q == 1) {// nếu điều kiện để cắm vào là đúng thì hãy bắt đầu với việc gắn bộ sạc trễ (10000); servo2.write (0); // di chuyển servo vào vị trí q = 0; // đặt lại điều kiện}}
void AH () {
//Serial.println("in "); servo1.write (180); // thả bệ điện thoại vào vị trí sạc q = 1; // bắt đầu phân vùng để tiếp tục quá trình // a = 1; detachInterrupt (digitalPinToInterrupt (2)); // loại bỏ ngắt, do đó sẽ không có bất kỳ sự cố nào xảy ra với ngắt bắt đầu khi không nên}
Ứng dụng Android
Ở đây tôi sẽ chỉ hiển thị ứng dụng phù hợp nhưng tệp mã thử nghiệm cũng sẽ được cung cấp, sự khác biệt duy nhất sẽ là loại bỏ lớp runnable và getBattery. Mã sê-ri được đề cập là mã tiêu chuẩn cho điện thoại kết nối với các thiết bị như mô-đun.
gói com.example.daniel.make; nhập android.bl Bluetooth. Bl BluetoothAdapter; nhập android.bl Bluetooth. Bl BluetoothDevice; nhập android.bl Bluetooth. Bl BluetoothSocket; nhập android.os. Handler; nhập android.support.v7.app. AppCompatActivity; nhập android.os. Bundle; nhập android.content. Intent; nhập android.content. IntentFilter; nhập android.os. BatteryManager; nhập java.io. IOException; nhập java.io. OutputStream; nhập java.util. Set; nhập java.util. UUID;
public class MainActivity mở rộng AppCompatActivity {
// tạo các đối tượng cần thiết Trình xử lý xử lý; // trợ giúp với vòng lặp Runnable runnable; // chạy liên tục BluetoothAdapter mBl BluetoothAdapter; BluetoothSocket mmSocket; BluetoothDevice mmDevice; OutputStream mmOutputStream; boolean dễ bay hơi stopWorker; private OutputStream outputStream; Chuỗi cuối cùng riêng tư DEVICE_NAME = "HC-05"; UUID cuối cùng riêng tư PORT_UUID = UUID.fromString ("00001101-0000-1000-8000-00805f9b34fb"); thiết bị BluetoothAdapter riêng; ổ cắm BluetoothSocket riêng; @Override protected void onCreate (Bundle saveInstanceState) {// là một tập hợp các hướng dẫn chạy khi ứng dụng được tạo super.onCreate (saveInstanceState); // displya create setContentView (R.layout.activity_main); runnable = new Runnable () {@Override public void run () {// chạy liên tục int level = (int) getBattery (); // lấy mức pin hiện tại if (level == 100) {// nếu mức pin đạt 100% hãy thử {getBT (); // kết nối với mô-đun bluetooth openBT (); // mở nó ra sendData (); // gửi dữ liệu cần thiết closeBT (); // đóng đối tượng} catch (IOException ex) { }} handler.postDelayed (runnable, 5000); // a delay}}; handler = new Handler (); handler.postDelayed (runnable, 0); }
public float getBattery () {
Intent batteryIntent = registerReceiver (null, new IntentFilter (Intent. ACTION_BATTERY_CHANGED))); // tạo hành động kết nối với pin int level = batteryIntent.getIntExtra (BatteryManager. EXTRA_LEVEL, -1); // nhận mức tốt hơn int scale = pinIntent.getIntExtra (BatteryManager. EXTRA_SCALE, -1); // lấy thang đo của pin if (level == -1 || scale == -1) {// trong trường hợp sai return 50.0f; } float batt = (level / (float) scale) * 100.0f; // lấy quy mô thích hợp trả về batt; // trả về level}
void getBT () {// nhận các kết nối bluetooth khả dụng
mBl BluetoothAdapter = BluetoothAdapter.getDefaultAdapter (); // lấy bộ điều hợp nếu (! mBl BluetoothAdapter.isEnabled ()) {// đảm bảo rằng điện thoại có răng xanh trên Intent enableBl Bluetooth = new Intent (BluetoothAdapter. ACTION_REQUEST_ENABLE); // yêu cầu nó được được bật nếu không startActivityForResult (enableBl Bluetooth, 0); } Đặt pairDevices = mBl BluetoothAdapter.getBondedDevices (); // lấy danh sách bluetooth liên kết nếu (pairDevices.size ()> 0) {// đảm bảo rằng có một số thiết bị cho (BluetoothDevice device: paiDevices) {// lặp lại thiết bị if (device.getName (). equals ("HC-05")) {// kiểm tra xem nó có đúng một mmDevice = device không; // lưu nó bị vỡ; }}}}
void openBT () ném IOException {
UUID uuid = UUID.fromString ("00001101-0000-1000-8000-00805f9b34fb"); // Chuẩn // SerialPortService ID mmSocket = mmDevice.createRfcommSocketToServiceRecord (uuid); // kết nối với thiết bị bằng id thích hợp mmSocket.connect (); // kết nối mmOutputStream = mmSocket.getOutputStream (); // bắt đầu khả năng gửi dữ liệu vào mô-đun arduino}
void sendData () ném IOException {// lớp gửi t tới arduino
mmOutputStream.write ('t'); }
void closeBT () ném IOException {// đóng tất cả các kết nối đến arduino
stopWorker = true; mmOutputStream.close (); mmSocket.close (); }}
Bước 6: Tập tin
Cảm ơn bạn đã đọc, đính kèm là các tập tin đã được sử dụng trong dự án này
Đề xuất:
Cấp nguồn cho điện thoại di động / điện thoại di động bằng pin hoặc nguồn bên ngoài.: 3 bước
Cấp nguồn cho điện thoại di động / di động bằng pin hoặc nguồn bên ngoài.: Giới thiệu. Ý tưởng này sẽ chỉ hoạt động với điện thoại hoặc máy tính bảng nếu pin có thể tháo rời. Tất nhiên, quan sát cực là quan trọng. Hãy cẩn thận để không làm hỏng thiết bị của bạn do bất cẩn. Nếu bạn không chắc chắn về khả năng của mình để làm điều này, hãy
Bộ sạc năng lượng mặt trời tự làm có thể sạc điện thoại di động: 10 bước
Bộ sạc năng lượng mặt trời tự làm có thể sạc điện thoại di động: Để đối phó với tình trạng thiếu điện trong thảm họa, chúng tôi đã đưa ra một hướng dẫn tạo điện động học cách đây vài ngày. Nhưng không có cách nào để có đủ động năng? Chúng ta sử dụng phương pháp nào để có được điện năng? Hiện nay, ngoài động
Điều chỉnh điện thoại cầm tay thành điện thoại di động: 7 bước (có ảnh)
Điều chỉnh Điện thoại Cầm tay với Điện thoại Di động: Bởi Bill Reeve ([email protected]) Được điều chỉnh cho phù hợp với hướng dẫn của Chuột ([email protected]) Tuyên bố từ chối trách nhiệm: Quy trình được mô tả ở đây có thể không hiệu quả với bạn - đó là rủi ro bạn có để lấy. Nếu nó không hoạt động, hoặc nếu bạn làm vỡ cái gì đó, nó không phải là
Đèn flash có thể sạc lại tuyệt vời với loa Bluetooth và điện thoại di động sạc: 4 bước (có hình ảnh)
Đèn nháy sạc có thể sạc lại được với loa Bluetooth và điện thoại di động: Xin chào các bạn, Trong hướng dẫn này, tôi đang báo cáo về đèn nháy sạc được trang bị loa Bluetooth và sạc USB nữ để sạc điện thoại di động, vì vậy nó là thiết bị đa mặt tốt để cắm trại và đi bộ trong công viên hoặc leo núi
Tạo bộ sạc điện thoại USB cho hầu hết mọi loại điện thoại di động !: 4 bước
Tạo bộ sạc điện thoại USB cho hầu hết mọi điện thoại di động !: Bộ sạc của tôi bị cháy, vì vậy tôi nghĩ, "Tại sao không chế tạo bộ sạc của riêng bạn?"