Mục lục:

NOCAR (Notificación De Carga): 5 bước
NOCAR (Notificación De Carga): 5 bước

Video: NOCAR (Notificación De Carga): 5 bước

Video: NOCAR (Notificación De Carga): 5 bước
Video: ASECAM АНТИВАНДАЛЬНАЯ КАМЕРА 5-ЗУМ С ОПРЕДЕЛЕНИЕМ И СЛЕЖЕНИЕМ ЗА ЛЮДЬМИ 2024, Tháng mười một
Anonim
NOCAR (Notificación De Carga)
NOCAR (Notificación De Carga)

trừu tượng

Chúng tôi tạo ra các công nghệ và kỹ thuật mới mỗi năm. Trong quá khứ, máy hơi nước là bước đầu tiên của một cái gì đó mà chúng tôi đặt tên là Cách mạng Công nghiệp. Con người đã không còn tồn tại kể từ đó. Chúng tôi đã và đang tạo ra những cỗ máy để làm cho cuộc sống của chúng tôi trở nên dễ dàng hơn và bây giờ chúng tôi luôn cố gắng cải thiện những thứ và quy trình mà chúng tôi đã thực hiện.

Chiếc xe hiện đại lần đầu tiên được giới thiệu vào năm 1886. Kể từ đó, nó đã có một bước phát triển vượt bậc về nhiều mặt. Từ giới hạn tốc độ, đến kiểm soát trọng lượng, nó đã được thay đổi và thực hiện nhiều chặng đường. Một công nghệ mới khiến chiếc xe không cần sử dụng nhiên liệu hóa thạch: xe hybrid. Tuy nhiên, phương pháp này có nhiều giới hạn hạn chế hơn. Một điều bất lợi là mất thời gian để sạc lại. Nó không phải là dễ dàng như đi đến trạm xăng và đổ đầy bình trong vài phút. Một số xe cần hàng giờ để hoàn thành việc sạc lại. Tuy nhiên, nhiều nếu trạm xăng gần khu giải trí hoặc khu mua sắm. Và nó có ý nghĩa, nếu thời gian sạc đầy pin của bạn mất nhiều thời gian hơn, bạn sẽ không có mặt ở đó suốt thời gian đó, vì vậy nó mang lại cho bạn cơ hội đi đến bất cứ nơi nào bạn muốn trong thời gian chờ đợi. Tuy nhiên, khi đã thu phí ô tô, nếu bạn chưa đưa ô tô ra khỏi trạm thu phí thì ô tô của bạn sẽ bị phạt tiền. Mục tiêu của sản phẩm này là giải quyết một vấn đề bình thường trong xe hybrid trong tương lai (xe hybrid có một sự đặt cược lớn trên bàn). Chúng tôi thực hiện một hệ thống mạch sử dụng Dragonboard 410c. Nó sẽ gửi cho bạn một email để thông báo cho bạn rằng mức năng lượng của chiếc xe của bạn đã lên đến một tỷ lệ phần trăm nhất định. Bằng cách này, bạn có thể thực hiện các hoạt động của mình mà không cần phải lo lắng về việc ô tô của bạn vẫn còn sạc hay nó đã sẵn sàng (và có khả năng bị phạt). Mặc dù ở Mexico, loại vấn đề này dường như không xuất hiện, nhưng chúng tôi mong đợi các hệ thống mới sẽ sớm thay thế nhiên liệu hóa thạch và ô tô hybrid sẽ đóng một vai trò quan trọng. Luật mới đã được thiết lập, và tiền phạt bây giờ là một sự thật, không phải là một ý tưởng xa vời.

Tín dụng hình ảnh: Clipper Creek: Trạm sạc xe điện

Bước 1: Vật liệu

  • DragonBoard 410c
  • Gác lửng cho 96 phòng
  • Protoboard
  • Dây nhảy
  • Nút bấm
  • Điện trở 10 ohm
  • Potenciometer 10k ohm
  • Tụ điện 150 pF
  • Chip ADC0804

Bước 2: Mã

#bao gồm

#bao gồm

#bao gồm

#include "libsoc_gpio.h"

#include "libsoc_debug.h"

#include "libsoc_board.h"

không dấu int GPIO_PIN1;

không dấu int GPIO_PIN2;

không dấu int GPIO_PIN3;

không dấu int GPIO_PIN4;

không dấu int GPIO_TRANSIS;

không dấu int GPIO_SELECT;

không dấu int GPIO_ENTER;

unsigned int GPIO_LEDTEST;

cờ int;

int valorBoton;

int valorLEDTest;

int pin1_state = 0;

int pin2_state = 0;

int pin3_state = 0;

int pin4_state = 0;

int last_touch_pin1;

int last_touch_p1;

int last_touch_pin2;

int last_touch_p2;

int last_touch_pin3;

int last_touch_p3;

int last_touch_pin4;

int last_touch_p4;

int select_state = 0;

int enter_state = 0;

int transis_state = 0;

int last_touch_b;

int last_touch_l;

int led_state = 0;

int buzzer_state = 0;

int running = 1;

_attribute _ ((hàm tạo)) static void _init ()

{

board_config * config = libsoc_board_init ();

GPIO_PIN1 = libsoc_board_gpio_id (cấu hình, "GPIO-A");

GPIO_PIN2 = libsoc_board_gpio_id (cấu hình, "GPIO-B");

GPIO_PIN3 = libsoc_board_gpio_id (cấu hình, "GPIO-C");

GPIO_PIN4 = libsoc_board_gpio_id (cấu hình, "GPIO-D");

GPIO_TRANSIS = libsoc_board_gpio_id (cấu hình, "GPIO-E");

GPIO_SELECT = libsoc_board_gpio_id (cấu hình, "GPIO-G");

GPIO_ENTER = libsoc_board_gpio_id (cấu hình, "GPIO-H");

GPIO_LEDTEST = libsoc_board_gpio_id (cấu hình, "GPIO-I");

libsoc_board_free (cấu hình);

}

int main ()

{

gpio * gpio_pin1, * gpio_pin2, * gpio_pin3, * gpio_pin4, * gpio_transis, * gpio_select, * gpio_enter, * gpio_ledtest;

int touch_pin1;

int touch_pin2;

int touch_pin3;

int touch_pin4;

int touch_transis;

int touch_select;

int touch_enter;

int touch_ledtest;

libsoc_set_debug (0);

gpio_pin1 = libsoc_gpio_request (GPIO_PIN1, LS_SHARED);

gpio_pin2 = libsoc_gpio_request (GPIO_PIN2, LS_SHARED);

gpio_pin3 = libsoc_gpio_request (GPIO_PIN3, LS_SHARED);

gpio_pin4 = libsoc_gpio_request (GPIO_PIN4, LS_SHARED);

gpio_transis = libsoc_gpio_request (GPIO_TRANSIS, LS_SHARED);

gpio_select = libsoc_gpio_request (GPIO_SELECT, LS_SHARED);

gpio_enter = libsoc_gpio_request (GPIO_ENTER, LS_SHARED);

gpio_ledtest = libsoc_gpio_request (GPIO_LEDTEST, LS_SHARED);

if ((gpio_pin1 == NULL) || (gpio_pin2 == NULL) || (gpio_pin3 == NULL) || (gpio_pin4 == NULL) || (gpio_transis == NULL) || (gpio_select == NULL) || (gpio_enter == NULL) || (gpio_ledtest == NULL))

{

goto fail;

}

libsoc_gpio_set_direction (gpio_pin1, INPUT);

libsoc_gpio_set_direction (gpio_pin2, INPUT);

libsoc_gpio_set_direction (gpio_pin3, INPUT);

libsoc_gpio_set_direction (gpio_pin4, INPUT);

libsoc_gpio_set_direction (gpio_transis, INPUT);

libsoc_gpio_set_direction (gpio_select, INPUT);

libsoc_gpio_set_direction (gpio_enter, INPUT);

libsoc_gpio_set_direction (gpio_ledtest, OUTPUT);

if ((libsoc_gpio_get_direction (gpio_pin1)! = INPUT)

|| (libsoc_gpio_get_direction (gpio_pin2)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin3)! = INPUT) || (libsoc_gpio_get_direction (gpio_pin4)! = INPUT)

|| (libsoc_gpio_get_direction (gpio_transis)! = INPUT) || (libsoc_gpio_get_direction (gpio_select)! = INPUT) || (libsoc_gpio_get_direction (gpio_enter)! = INPUT) || (libsoc_gpio_get_direction (gpio_ledtest)! = OUTPUT))

{

goto fail;

}

trong khi (đang chạy)

{

touch_pin1 = libsoc_gpio_get_level (gpio_pin1);

touch_pin2 = libsoc_gpio_get_level (gpio_pin2);

touch_pin3 = libsoc_gpio_get_level (gpio_pin3);

touch_pin4 = libsoc_gpio_get_level (gpio_pin4);

touch_enter = libsoc_gpio_get_level (gpio_enter);

touch_select = libsoc_gpio_get_level (gpio_select);

touch_transis = libsoc_gpio_get_level (gpio_transis);

touch_ledtest = libsoc_gpio_get_level (gpio_ledtest);

if (touch_select == 1)

{

valorBoton ++;

nếu (valorBoton == 4)

{

valorBoton = 0;

}

}

nếu (valorBoton == 3)

{

valorLEDTest = 1;

libsoc_gpio_set_level (gpio_ledtest, valorLEDTest);

}

}

fail: if (gpio_pin1 || gpio_pin2 || gpio_pin3 || gpio_pin4 || gpio_transis || gpio_select || gpio_enter || gpio_ledtest)

{

printf ("áp dụng tài nguyên gpio không thành công! / n");

libsoc_gpio_free (gpio_pin1);

libsoc_gpio_free (gpio_pin2);

libsoc_gpio_free (gpio_pin3);

libsoc_gpio_free (gpio_pin4);

libsoc_gpio_free (gpio_transis);

libsoc_gpio_free (gpio_select);

libsoc_gpio_free (gpio_enter);

libsoc_gpio_free (gpio_ledtest);

}

trả về EXIT_SUCCESS;

}

Bước 3: Mạch điện

Mạch điện
Mạch điện
Mạch điện
Mạch điện
Mạch điện
Mạch điện
Mạch điện
Mạch điện

Mạch này hoạt động như một bộ chuyển đổi tương tự-kỹ thuật số. Nó lấy tín hiệu của máy đo điện trở có giá trị từ 0 đến 5 volt, sau đó bộ chuyển đổi biến nó thành tín hiệu kỹ thuật số từ 0 đến 255 bit và gửi nó đến ĐẦU VÀO DragonBoard.

Bước 4:

Được phát triển bởi:

Alfredo Fontes

Mauricio Gómez

Jorge Jiménez

Gerardo Lopéz

Felipe Rojas

Luis Rojas

Ivón Sandoval

Đề xuất: