Sadržaj:

NOCAR (Notificación De Carga): 5 koraka
NOCAR (Notificación De Carga): 5 koraka

Video: NOCAR (Notificación De Carga): 5 koraka

Video: NOCAR (Notificación De Carga): 5 koraka
Video: 1 HORA DE COSAS QUE NO SABÍAS! 👀⏰ [XpressTV] 2024, Juli
Anonim
NOCAR (Notificación De Carga)
NOCAR (Notificación De Carga)

Sažetak

Svake godine stvaramo nove tehnologije i tehnike. U prošlosti je parna mašina bila prvi korak nečega što smo nazvali Industrijska revolucija. Ljudsko biće se nije zadržalo od tada. Mi smo stvarali mašine kako bismo si olakšali život, i svaki put sada pokušavamo poboljšati stvari i procese koje smo već napravili.

Moderni automobil prvi put je predstavljen 1886. Od tada je doživio veliki razvoj na mnogim aspektima. Od ograničenja brzine, do kontrole težine, mijenjalo se i krenulo mnogim stazama. Nova tehnologija učinila je da automobil ne zahtijeva fosilna goriva: hibridni automobil. Međutim, ova metoda ima ograničenija ograničenja. Jedan nedostatak je vrijeme potrebno za punjenje. Nije tako jednostavno kao otići do benzinske pumpe i napuniti rezervoar za nekoliko minuta. Nekim automobilima je potrebno nekoliko sati da dovrše punjenje. Međutim, mnogi ako se benzinska pumpa nalazi u blizini rekreacijske ili trgovačke zone. I ima smisla, ako je potrebno duže vrijeme da napunite bateriju, nema smisla da budete tamo cijelo vrijeme, pa vam daje priliku da u međuvremenu idete gdje god želite. Međutim, nakon što se automobil napuni, ako niste iznijeli automobil iz punionice, kaznit će se novčana kazna za vaš automobil. Cilj ovog proizvoda je riješiti uobičajen problem u budućim hibridnim automobilima (hibridni automobili imaju odličnu opkladu na stolu). Implementiramo sistem kola pomoću Dragonboard 410c. On vam šalje e -poruku s upozorenjem da je naboj energije vašeg automobila do određenog postotka. Na ovaj način možete obavljati svoje aktivnosti bez brige o tome da li se vaš automobil još uvijek puni ili je spreman (i vjerojatno ćete dobiti kaznu). Iako se ovdje u Meksiku ova vrsta problema ne pojavljuje, prije nego što očekujemo da će novi sistemi zauzeti mjesto nad fosilnim gorivima, a hibridni automobili će preuzeti važnu ulogu. Usvojeni su novi zakoni, a kazne su sada činjenica, a ne daleka ideja.

Kredit za sliku: Clipper Creek: Stanice za punjenje električnih vozila

Korak 1: Materijali

  • DragonBoard 410c
  • Mezanin za 96 ploča
  • Protoboard
  • Žica za kratkospojnike
  • Taster
  • Otpornik 10 ohma
  • Potenciometar 10k ohm
  • Kondenzator 150 pF
  • Čip ADC0804

Korak 2: Kodirajte

#include

#include

#include

#include "libsoc_gpio.h"

#include "libsoc_debug.h"

#include "libsoc_board.h"

nepotpisani int GPIO_PIN1;

nepotpisani int GPIO_PIN2;

nepotpisani int GPIO_PIN3;

nepotpisani int GPIO_PIN4;

nepotpisani int GPIO_TRANSIS;

nepotpisani int GPIO_SELECT;

nepotpisani int GPIO_ENTER;

nepotpisani int GPIO_LEDTEST;

int flag;

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 trčanje = 1;

_atribut _ ((konstruktor)) statička void _init ()

{

board_config *config = libsoc_board_init ();

GPIO_PIN1 = libsoc_board_gpio_id (config, "GPIO-A");

GPIO_PIN2 = libsoc_board_gpio_id (config, "GPIO-B");

GPIO_PIN3 = libsoc_board_gpio_id (config, "GPIO-C");

GPIO_PIN4 = libsoc_board_gpio_id (config, "GPIO-D");

GPIO_TRANSIS = libsoc_board_gpio_id (config, "GPIO-E");

GPIO_SELECT = libsoc_board_gpio_id (config, "GPIO-G");

GPIO_ENTER = libsoc_board_gpio_id (config, "GPIO-H");

GPIO_LEDTEST = libsoc_board_gpio_id (config, "GPIO-I");

libsoc_board_free (config);

}

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;

}

dok (trčim)

{

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 ++;

if (valorBoton == 4)

{

valorBoton = 0;

}

}

if (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 ("primijeni gpio resurs nije uspio! / 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);

}

return EXIT_SUCCESS;

}

Korak 3: Električni krug

Električni krug
Električni krug
Električni krug
Električni krug
Električni krug
Električni krug
Električni krug
Električni krug

Ovo kolo radi kao analogno-digitalni pretvarač. On uzima signal potenciometra čija je vrijednost između 0 i 5 volti, zatim pretvarač pretvara u digitalni signal između 0 i 255 bita i šalje ga na DragonBoard INPUTS.

Korak 4:

Developed by:

Alfredo Fontes

Mauricio Gómez

Jorge Jiménez

Gerardo Lopéz

Felipe Rojas

Luis Rojas

Ivón Sandoval

Preporučuje se: