فهرست مطالب:

NOCAR (Notificación De Carga): 5 قدم
NOCAR (Notificación De Carga): 5 قدم

تصویری: NOCAR (Notificación De Carga): 5 قدم

تصویری: NOCAR (Notificación De Carga): 5 قدم
تصویری: Бюджетный zigbee сенсор электричества - 220 В / 5 В USB, создание, применение в Home Assistant 2024, نوامبر
Anonim
NOCAR (Notificación De Carga)
NOCAR (Notificación De Carga)

خلاصه

ما هر سال فناوری ها و تکنیک های جدیدی را ایجاد می کنیم. در گذشته ، دستگاه بخار اولین قدم از چیزی بود که ما آن را انقلاب صنعتی نامگذاری کردیم. از آن زمان به بعد انسان درنگ نکرد. ما ماشین هایی را برای سهولت زندگی خود ایجاد کرده ایم و هر بار سعی می کنیم کارها و فرآیندهایی را که قبلاً انجام داده ایم بهبود بخشیم.

اتومبیل مدرن برای اولین بار در سال 1886 معرفی شد. از آن زمان ، این خودرو از جنبه های مختلف پیشرفت بزرگی داشته است. از محدودیت سرعت ، تا کنترل وزن ، تغییر کرده و مسیرهای زیادی را طی کرده است. یک فناوری جدید باعث شد این خودرو نیازی به سوخت فسیلی نداشته باشد: خودروی هیبریدی. با این حال ، این روش محدودیت های بیشتری دارد. یکی از معایب آن زمان لازم برای شارژ مجدد است. رفتن به پمپ بنزین و پر کردن مخزن در چند دقیقه به این آسانی نیست. برخی از خودروها برای تکمیل شارژ به ساعت ها نیاز دارند. اگرچه پمپ بنزین در نزدیکی منطقه تفریحی یا منطقه خرید است. و منطقی است ، اگر مدت زمان بیشتری طول بکشد تا باتری شما پر شود ، هیچ فایده ای ندارد که شما در تمام مدت آنجا باشید ، بنابراین به شما این فرصت را می دهد که در این فاصله به هر کجا که می خواهید بروید. با این حال ، هنگامی که ماشین شارژ می شود ، اگر ماشین خود را از ایستگاه شارژ خارج نکرده اید ، جریمه ای برای خودرو شما اعمال می شود. هدف این محصول حل یک مشکل عادی در خودروهای هیبریدی آینده است (خودروهای هیبریدی شرط بزرگی روی میز دارند). ما یک سیستم مدار را با استفاده از Dragonboard 410c پیاده سازی می کنیم. به شما ایمیلی ارسال می کند تا به شما هشدار دهد که شارژ انرژی خودرو شما تا درصد خاصی است. به این ترتیب ، می توانید بدون نگرانی در مورد اینکه آیا اتومبیل شما هنوز در حال شارژ شدن است یا آماده است (و احتمال دارد جریمه ای دریافت کنید) فعالیت های خود را انجام دهید. اگرچه در مکزیک چنین مشکلی به نظر نمی رسد ، اما زودتر از آنچه انتظار داشتیم سیستم های جدید بر سوخت های فسیلی غلبه خواهند کرد و خودروهای هیبریدی نقش مهمی را ایفا خواهند کرد. قوانین جدیدی وضع شده است ، و جریمه ها در حال حاضر یک واقعیت است ، نه یک ایده دور.

اعتبار تصویر: Clipper Creek: ایستگاه های شارژ خودروهای برقی

مرحله 1: مواد

  • DragonBoard 410c
  • میزانسن برای 96Boards
  • پروتو بورد
  • سیم جامپر
  • دکمه فشاری
  • مقاومت 10 اهم
  • پتانسیومتر 10k اهم
  • خازن 150 pF
  • تراشه ADC0804

مرحله 2: کد

#عبارتند از

#عبارتند از

#عبارتند از

#شامل "libsoc_gpio.h"

#شامل "libsoc_debug.h"

#شامل "libsoc_board.h"

بدون امضای int GPIO_PIN1؛

بدون امضای int GPIO_PIN2؛

بدون امضای int GPIO_PIN3 ؛

بدون امضای int GPIO_PIN4 ؛

بدون امضا در GPIO_TRANSIS ؛

بدون امضا در GPIO_SELECT؛

بدون امضا در GPIO_ENTER ؛

بدون امضای int GPIO_LEDTEST؛

پرچم 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 در حال اجرا = 1؛

_tribute _ ((سازنده)) void static _init ()

{

board_config *config = libsoc_board_init ()؛

GPIO_PIN1 = libsoc_board_gpio_id (پیکربندی ، "GPIO-A") ؛

GPIO_PIN2 = libsoc_board_gpio_id (پیکربندی ، "GPIO-B") ؛

GPIO_PIN3 = libsoc_board_gpio_id (پیکربندی ، "GPIO-C") ؛

GPIO_PIN4 = libsoc_board_gpio_id (پیکربندی ، "GPIO-D") ؛

GPIO_TRANSIS = libsoc_board_gpio_id (پیکربندی ، "GPIO-E") ؛

GPIO_SELECT = libsoc_board_gpio_id (پیکربندی ، "GPIO-G") ؛

GPIO_ENTER = libsoc_board_gpio_id (پیکربندی ، "GPIO-H") ؛

GPIO_LEDTEST = libsoc_board_gpio_id (پیکربندی ، "GPIO-I") ؛

libsoc_board_free (پیکربندی) ؛

}

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))

{

شکست خوردن ؛

}

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)! = ورودی)

|| (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))

{

شکست خوردن ؛

}

هنگام (دویدن)

{

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 (انتخاب لمسی == 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 ("اعمال منبع gpio fail! / 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) ؛

}

بازگشت EXIT_SUCCESS ؛

}

مرحله 3: مدار الکتریکی

مدار الکتریکی
مدار الکتریکی
مدار الکتریکی
مدار الکتریکی
مدار الکتریکی
مدار الکتریکی
مدار الکتریکی
مدار الکتریکی

این مدار به عنوان مبدل آنالوگ به دیجیتال عمل می کند. این سیگنال یک پتانسیومتر را دریافت می کند که دارای مقدار بین 0 تا 5 ولت است ، سپس مبدل آن را به یک سیگنال دیجیتال بین 0 تا 255 بیت تبدیل می کند و آن را به ورودی های DragonBoard ارسال می کند.

مرحله 4:

توسعه یافته توسط:

آلفردو فونتس

مائوریسیو گومز

خورخه جیمنز

جراردو لوپز

فیلیپه روخاس

لوئیس روخاس

ایوون سندووال

توصیه شده: