Авторазбор

Разборка грузовиков Мерседес–Бенц (Mercedes-Benz)

Содержание

Чтение кан-штины автомобиля по obd2 протоколу / DIYtimes

Валялся у меня сгоревший ELM327 адаптер для k-line на микросхеме PIC18F25K80. Поковырявшись с ним некоторое время понял, что ничего полезного не сделаю. Выбросил всю внутрянку, купил чип L9637D. И понеслось…

Напрямую arduino соединить с кан-шиной нельзя. Нужен конвертер уровней. Для этих целей подходит L9637D. Он подключается по классической схеме:

Данная схема встречается с дополнительной микросхемой ELM327. На моем ситрояне используется протокол ISO 14230. По тому достаточно только L9637D.

Схема питается от 12-и вольт в obd разьеме через линейный стабилизатор на 5 вольт.

K-line — пин 7 колодки, L-line пин 15 . земля пины 4 и 5, плюс пин 16. Общая распиновка разьема obd такая:

Соединяем Tx микросхемы L9637D с 14-ым пином Ardiono, uart пины с usb-ttl адаптером.

Загружаем скетч, запускаем и.. Я получил вот такой первый пакет:

C1 33 F1 81 66 83 F1 10 C1 E9 8F BD C2 33 F1 01 0C F3 84 F1 10 41 0C 0D 20 FF C2 33 F1 01 05 EC 83 F1 10 41 05 49 13 C2 33 F1 01 0F F6 83 F1 10 41 0F 47 1B

где
C1 33 F1 81 66 — эхо на запрос инициализации шины
83 F1 10 C1 E9 8F BD — ответ ЭБУ на запрос инициализации, C1 значит ОК
C2 33 F1 01 0C F3 — эхо на запрос оборотов двигателя
84 F1 10 41 0C 0D 20 FF — ответ ЭБУ с оборотами, где 0D 20 (HEX) >> 3360 (DEC)/4 = 840 об/мин
C2 33 F1 01 05 EC — эхо на запрос температуры ОЖ двигателя
83 F1 10 41 05 49 13 — ответ ЭБУ с температурой, где 49 (HEX) >> 73 (DEC) -40 = 33 град.
C2 33 F1 01 0F F6 — эхо на запрос температуры всасываемого воздуха
83 F1 10 41 0F 47 1B — ответ ЭБУ с температурой, где 47 (HEX) >> 71 (DEC) -40 = 31 град.

Далее немного доработал код и сделал вывод данных на oled дисплей.

Проект https://github.com/martinhol221/ISO14230-4-KWP

073-Адаптер USB to K-line на базе Atmega8/48/88. — GetChip.net

K-Line.
Когда я разрабатывал эту схему хотелось сделать конструкцию максимально надёжную и простую для повторения. И решить взаимоисключающие требования надёжность/простота/цена. Теперь подробней:

Пациент — автомобильная борт сеть.
Автомобильная борт сеть очень капризная штука. Только непосвящённый уверен что там 12вольт постоянного тока. А на практике от 8-9 до 15-16 с ВЧ иголками амплитудой до 100! вольт. Фактически это смерть любому криво сделанному устройству. 99% случаев выхода ЭБУ из строя словили такую иголку.

K и L линии.
Интерфейс обмена ЭБУ с диагностическим оборудованием K линия, это симплексная реализация UART по схеме монтажное ИЛИ:

все это удовольствие описано 2-мя стандартами ИСО 9141 для K и L линий
и ИСО 14230 для K линии.
K-Line.zip (3086 Загрузок)

Для подключения по этим стандартам используют МС сопряжения например MC33290 — в моём мелком городе это чудо стоит около 70р.
mc33290.pdf (2972 Загрузки)

Но пойдем другим путём! МС эта хоть и не особо редкая но в некоторых городах труднодоставаема. И судя по датасшиту на неё, не обеспечивает развязки от борт сети.
Кто-то желает словить 100В в USB порт? Я нет 🙂

Для K линии приняты следующие значения 0 и 1:

При этом уровни даны в процентах от значения напряжения борт сети. А оно у нас может быть любое.

МК Аtmega8/48/88
Тут всё просто — для совместимости с программной реализацией USB делаем питание 3. 3В. По феншую уровень 0 составляет от 0 до 1/2 напряжения питания, а уровень 1 от 1/2 до напряжения питания. Т.е. ‘0’- это от 0 до 1.65вольт, а ‘1’-  от 1.65 до 3.3вольт.

Как скрестить ужа с ежом?
Тут есть техническая проблема:
— с одной стороны — уровни в K-Line от 0 до 24вольт с возможными иголками до 100В и разрядами статического электричества до 1000-2000В в момент подключения;
— с дугой стороны МК с уровнями от 0 до 3.3Вольт и очень чувствительный к статике.

Решим проблему статики и уровней простым, как удар лопатой в голову методом 😀 : поставим диодно транзисторную оптопару. Средний оптрон обеспечивает изоляцию вход-выход 2000-3000В, что нас вполне устраивает. Будем использовать PC817 или аналогичный. В случае если пользователь воткнет провода не туда МК и компьютер останутся жить. А входная цепь как повезёт 😀
spc817.pdf (2650 Загрузок)

В принципе, скорости на K-Line не большие. Но однажды посмотрев осциллографом борт сеть не уверен что МК правильно распознает среди всей этой каши полезный сигнал. А не уверен не обгоняй! Нужно сделать простейшую защиту от помех. Самым распространённым методом борьбы с помехами в цифровой технике является триггер шмитта. Делают его интегрально на базе компаратора.  Данные МС у мя есть но там много лишнего. Например 8 линий. Сделаем триггер шмитта на NE555 (с уровнем переключения в 50% напряжения питания), культовая МС всех времён и народов. По сути описание конструкций на этой МС заслуживает отдельной книги в тысячу другую страниц.
lm555.pdf (2482 Загрузки)

В K-Line передача происходит замыканием линии ключом на землю. Поручим эту работу оптрону.

Собственно схема устройства.

 

Диоды D1,D3 цепь защитные на случай если забудут подключить питание или массу(любые диоды шотки). Диод D2 (мощный диод шотки на >10A) и предохранитель F1 образуют цепь защиты от переполюсовки. Конденсаторы в цепи питания K-Line на 28-10Вольт.  МС интегрального стабилизатора на 3.3В 78l33 формирует питание для цепей МК из USB +5В.
l78l33ab.pdf (2396 Загрузок)

Светодиоды и лампочки добавить по вкусу 😀

 

(Visited 14 446 times, 1 visits today)

Obd2 uart arduino. Cheap OBD2 Communications on K-line (ISO 9141-2 and ISO 14230-4)

Show more 2. Show less. OBD2 for Arduino. November 29,Latest update: January 3, This project turns the Arduino into an OBD2 on-board diagnostic tester. That depends on the actual installation, see chapter 3. Do not try to power the Arduino at its 5V output pin! Without further protective diodes soldered in, this might destroy the regulator on the Arduino. Hardware Preparation The setup of the prototype is described here. Dependend on the actual installation you use for your handheld diagnostic tester see chapter 3.

I used short pieces of wire and soldered them on the jumper pads. Do not solder the ICSP header in! The same wiring is found on the Proto shield. For the first setup use 2. Arduino pin The wiring can be found in chapter 2.

That header prevents an easy installation now. If you want to build a real handheld diagnostic tester, there are at least three solutions. Solution 1 for experts only, yields the least stacking size You carefully have to make two changes to the Pi-OBD module. First, desolder the pin header on the module or try to get one from Diamex without it. After soldering the wiring, attach a layer of thin isolation between prototype shield and Pi-OBD module, e. If you do not want to make that irreversible change to your new Pi-OBD module, there are two other solutions.

My Arduino is mounted in a case. If there is not enough space between Arduino and case, use plastic screws or use hot glue to fix the Pi-OBD module to the case.

Then, the Pi-OBD module’s mounting holes could be used to mount the whole construction in a case. There are two ways to fix that: 1. Solution 3 biggest size A third more complicated solution would be to use two custom made oversized prototype boards to make more space for the Pi-OBD module in between see ASCII art below. This needs 2 copper strip boards for the 2 prototype shields. The strips must be cut in the middle of the boards for all strips that later contain pin headers.

So that the left side of a strip connects the left female pin headers mounted on top of a board with the left male pin headers mounted under the board and the right side of a strip connects the right female pin headers mounted on top of a board with the right male pin headers mounted under the board.

The backside is the solder side, if you do not use double sided strip boards with through holes. So, this needs two sets of four Arduino female pin headers. One set of four Arduino male pin headers. And one set of four Arduino male pin headers with longer pins for stacking. All headers could be made using pin strips. Otherwise some text is cut off. That is not enough to receive more than 3 OBD2 DTCs inside the loop function serial data is not read and copied fast enough.This is just another OBD2 solution for monitoring the sensors in a verhicle.

It supports the K-line OBD2 serial communication between a verhicle and a microcontroller. Both ISO’s are almost similar. This solution differs from the rest that is low cost for less than 10 euro!! It is low cost in the way that you don’t need an arduino, raspberry pi or smart phone. Just a microcontroller and LCD display so you can use your smartphone for other purposes.

Probably it will work for a Peugeot and Toyota Aygo of as well since they are technically identical. From what I read on the internet there are many flavours on K-line around so there is a possibility it will not suit your car.

Maybe some changes are needed to make it work. The source code is provided so you can investigate and change when needed. Maybe you can help extending this list of cars to help others! Did you use this instructable in your classroom? Add a Teacher Note to share how you incorporated it into your lesson.

Both ISO’s and knows a 5 baud initialization sequence. The microcontroller must start this init by transmitting byte 0x33 to the verhicle at 5 bits per second. The total transmit time for transmitting byte 0x33 takes about 2 seconds.

After this initialization it is expected to continue communicating at 10k4 baud. After this, the verhicle will respond with key bytes 0x08 and 0x08 or 0x96 and 0x The sync byte with key bytes of the verhicle must be acknowledged by the microcontroller by inverting the second key byte. This will end the initialization part of ISO The response of ISO is slightly different.

The verhicle ECU will also respond with synchronization byte 0x Only the key bytes are different. In case of a VW Touran of the key bytes are 0xef and 0x8f. Also here the second key byte must be acknowledged by the microcontroller by inverting it. After the initialization process it is possible to submit a request to the verhicle ECU.

A request is a sequence of bytes where adressing, a mode, a PID and a checksum is present. The following are example requests:. The first three bytes are for addressing.

The fourth is the mode field. The fifth byte is the data field with the PID and the last byte is the checksum. In this example mode 1 is used. This mode will show «current data» as how it is at this moment. This mode is perfect for displaying actual information. The data field contains the PID. In this case 0x0d which is the verhicle speed.In my previous instructable i created an OBD2 Simulator so that i didn’t have to test my Arduino OBD2 Reader in the car the whole time but instead in the comfort of my own home.

Did you use this instructable in your classroom? Add a Teacher Note to share how you incorporated it into your lesson. Start by removing the sticker on ELM Cable’s Enclosure, remove the 4 screws with a smallish star screwdriver.

Be careful though I managed to de-solder some components which i could not put back, but luckily it still worked afterwards. Tip : Program the arduino so that it writes to the serial monitor with some short delays in between, then connect a jumper cable to the TX pin of the arduino and poke around with the other end on the board to see where you get some serial activity, the surface mounted LED’s wil flicker as communication happens, unfortunately this will not work for the RX side but in the pictures its easy enough to see where I soldered it onto the board.

Once done put it back into the box, I just taped it up because In my Jeep the box is in my way and cannot drive it whilst in the driver seat, I will be using the enclosure for something else. Below is my Arduino Sketch, I noticed that the formatting messes with the code a bit, I have some more information available related to this build you can also view the code here.

From there you simply press the left and right buttons to cycle through the menus currently it will only read. Tip 5 weeks ago. It’s installable through the Arduino IDE’s libraries manager and comes with examples. I have purchased an obdII speedo. It will not connect as the delta’s obdII port is missing pin 5.

Is it possible that 9 vendor option could actually be the signal ground 5? I have read that there is an adapter, but I have not been able to source one. Question 1 year ago on Step 3. Question 1 year ago. Question 2 years ago. I got inspired by this Project. So a big Thanks. I did have to change some code probably because technology changes and each car uses a different protocol. The Formula for the conversion from hex to decimal needs to be modified. Below a items I had to correct.

I Published my Project for my Miata if someone is interested. I appreaite the effort to write this! Although, I went a slightly different route.

Both are very cheap on sites like Amazon or eBay. You may also need a logic level converter between the Arduino and bluetooth module like I did, since the Arduino is 5V and the module is 3. The advantage of this method is that you don’t have to rip an adapter apart and there’s need to worry about running wires. Attempting to solder to a surface mount board can also be a very unpleasant experience and will likely be unreliable unless you are good at it.

Reply 3 years ago. Thanks in advance. I soldered to the two positions you have in your photos however when I hook the wires up to the Arduino I get an error in the connection. Any help you can provide is greatly appreciated. Thank you. I saw this and bought the cord instantly, I mean its nine bucks, that is worth getting for just OBD plug! Again nice indestructible. Will post a pic when I finish!! I already follow your instruction.We are still shipping!

When you place an order, we will ship as quickly as possible. Thank you for your continued support. Track My Order. Frequently Asked Questions. International Shipping Info. Send Email. Mon-Fri, 9am to 12pm and 1pm to 5pm U.

Mountain Time:.

Fsx gulfstream

Chat With Us. This product has shipping restrictions, so it might have limited shipping options or cannot be shipped to the following countries:. Added to your shopping cart. It was first introduced in the United States inand became a requirement on all and newer US vehicles. Other countries, including Canada, parts of the European Union, Japan, Australia, and Brazil adopted similar legislation.

It is fully compatible with the de facto industry standard ELM command set. You should check with each vendor to make sure they are compatible before purchasing one. Or ask the vendor for a trial version to make sure it works. Firmware updates can be downloaded from Scantool. Once they are shorted, plug the board into the car, and wait until the RX light starts blinking rapidly.

OBD2 for Arduino

This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools. Skill Level: Noob — Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple if any polarized components. A basic soldering iron is all you should need. See all skill levels.

If a board needs code or communicates somehow, you’re going to need to know how to program or interface with it. The programming skill is all about communication and code. Skill Level: Rookie — You will need a better fundamental understand of what code is, and how it works.

You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL. If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.Have you ever had an infamous ‘check engine light’? Did you wish you could just check the error code yourself and not deal with going to a mechanic?

It provides you a serial interface using the ELM command se…. Has your «Check Engine Light» turned on in your car and you don’t know what could possibly be wrong? We get it, it’s a stress…. This tutorial does expect the user to have experience with basic electronics and serial communication. If you are unfamiliar with these concepts or need a refresher, check out these other tutorials.

It was first introduced in the United States inand became a requirement on all and newer US vehicles.

Урок 26.1 Соединяем две arduino по шине UART

Other countries, including Canada, parts of the European Union, Japan, Australia, and Brazil adopted similar legislation. It is fully compatible with the de facto industry standard ELM command set. ScanTool has some great resources for the STN available on their website, including:. The STN is the main controller chip on the board. Voltage on the board is regulated to both 5V and 3. The board is powered from the DB9 connector.

There are two different connection points on the board. The first, on the outside edge of the board, is a 6-pin connector that is compatible with an FTDI board. There is a second 8-pin header close to the DB9 connector. To create a solid electrical connection with any other components such as an Arduino or an FTDI Basicyou need to solder headers to the board. For use with the FTDI Basic, it is easiest to solder male headers into the 6-pin header row at the edge of the board.

Once you have this done, your board should look similar to this. Depending on the make and model of your car, the port location may vary. Consult your owner’s maunal if you cannot locate the port. The mating end of the cable tends to be a very tight fit and require a bit of force to get it sitting securely, so it’s usually easier to start hooking everything together between the car and the cable.

Freematics OBD-II Adapter for Arduino

Configure the serial connection to bps, 8 data bits, 1 stop bit and no parity. These commands always start with «AT».

After sending «AT», the next letters sent to the board will be the commands that should be executed by the board. You can find a list of all of the available AT commands here. To start communicating with the board, type «ATZ» into your terminal window and hit «enter». This will send the command to reset the board. You should see some LEDs flash on your board and then see the start-up prompt in the terminal window. If you receive back any garbled characters, double check that you have the correct serial port settings in your terminal.

Type «ATRV» into the terminal window and hit enter. The board should then return the system voltage to you. There are several different OBD protocolsso it can be confusing attempting to find the correct one. To use this auto-detect feature, the vehicle’s ignition must be in the ‘On’ position. The vehicle doesn’t necessarily need to be running however. Once the ignition is on, send the command «ATSP0» that’s a trailing zero.

The board will then reply with «OK» once the proper protocol has been detected.You seem to have CSS turned off. Please don’t fill out this field. Several example sketches are provided for demonstrating the usage of the library as well as for real data logging use. The aim of the project is to provide Arduino vehicle connectivity via the OBD-II port with easy-to-use Arduino library so Arduino lovers can start play Arduino on their cars easily.

Raycast distance check

Please provide the ad click URL, if possible:. Help Create Join Login. Operations Management. IT Management. Project Management. Services Business VoIP. Resources Blog Articles Deals.

Fusion 360 drawing dashed lines

Menu Help Create Join Login. Get project updates, sponsored content from our select partners, and more. Full Name. Phone Number.

Job Title. Company Size Company Size: 1 — 25 26 — 99 — — 1, — 4, 5, — 9, 10, — 19, 20, or More. Get notifications on updates for this project. Get the SourceForge newsletter.

Scuola secondaria 1-¦ g. orzinuovi esiti esame

JavaScript is required for this form. No, thanks. Project Samples. Project Activity. Categories Embedded systems. Improve your productivity and user experience with Open Shell, a Windows start menu alternative for Windows Bringing back the classic start menu style.

Learn More.Track My Order. Frequently Asked Questions. International Shipping Info. Send Email. Mon-Fri, 9am to 12pm and 1pm to 5pm U. Mountain Time:. Chat With Us. Have you ever had an infamous ‘check engine light’? Did you wish you could just check the error code yourself and not deal with going to a mechanic? It provides you a serial interface using the ELM command se….

Has your «Check Engine Light» turned on in your car and you don’t know what could possibly be wrong? We get it, it’s a stress….

SparkFun OBD-II UART

This tutorial does expect the user to have experience with basic electronics and serial communication. If you are unfamiliar with these concepts or need a refresher, check out these other tutorials. It was first introduced in the United States inand became a requirement on all and newer US vehicles. Other countries, including Canada, parts of the European Union, Japan, Australia, and Brazil adopted similar legislation. It is fully compatible with the de facto industry standard ELM command set.

ScanTool has some great resources for the STN available on their website, including:. The STN is the main controller chip on the board. Voltage on the board is regulated to both 5V and 3. The board is powered from the DB9 connector.

Space ocn ne jp

There are two different connection points on the board. The first, on the outside edge of the board, is a 6-pin connector that is compatible with an FTDI board. There is a second 8-pin header close to the DB9 connector.

To create a solid electrical connection with any other components such as an Arduino or an FTDI Basicyou need to solder headers to the board. For use with the FTDI Basic, it is easiest to solder male headers into the 6-pin header row at the edge of the board.

Once you have this done, your board should look similar to this. Depending on the make and model of your car, the port location may vary. Consult your owner’s maunal if you cannot locate the port. The mating end of the cable tends to be a very tight fit and require a bit of force to get it sitting securely, so it’s usually easier to start hooking everything together between the car and the cable.

Configure the serial connection to bps, 8 data bits, 1 stop bit and no parity. These commands always start with «AT». After sending «AT», the next letters sent to the board will be the commands that should be executed by the board. You can find a list of all of the available AT commands here. To start communicating with the board, type «ATZ» into your terminal window and hit «enter». This will send the command to reset the board. You should see some LEDs flash on your board and then see the start-up prompt in the terminal window.

If you receive back any garbled characters, double check that you have the correct serial port settings in your terminal. Type «ATRV» into the terminal window and hit enter.

Aws ppt slideshare

Блок управления предпусковым подогревателем Webasto (Arduino + Webasto = Ardubasto) / Хабр

Установили мне на авто пред пусковой подогреватель Webasto. После установки выяснилось, что управление им осуществляется не дискретным сигналом (как на предыдущем моем авто), а только по цифровой шине W-bus. Шина W-bus по электрическим параметрам является аналогом шины K-line и для нее есть интегральный конвертер K-line – RS232TTL — это микросхема L9637D. На этой микросхеме, на основе Arduino и решено было сделать управление подогревателем. Задача осложнялась тем, что Arduino поддерживает только протокол передачи по последовательному порту без контроля четности, а протокол W-bus работает с настройками порта 2400/8-E-1. Для обхода этого были сняты осциллограммы команды запуска Webasto и команды к Webasto реализованы тайминговыми задержками.

Функции блока управления:

1) При подаче питания на блок управления через нормально разомкнутые выходные контакты сигнализации (с дистанционным управлением по СМС) блок непрерывно посылает в шину W-bus команду на подогрев.

2) При подключении Arduino к компьютеру по USB и использовании программ диагностики Webasto можно диагностировать, управлять и стирать ошибки подогревателей. Для этого необходимо загрузить пустой скетч.

Схема устройства в формате AutoCad.
Внешний вид
Скетч

Это было первая полностью работоспособная реализация блока управления.

Дальнейшим развитием, пока до конца не реализованным является выполнение следующих функций и характеристик устройства:

1) Управлять включением по СМС от сигналки блоком Webasto – при кратковременном замыкании контакта сигналки Arduino должен встать на самоподхват по питанию на время работы Webasto.

2) Дополнить устройство монохромным дисплеем типа Nokia 5110.

3) Вывести на дисплей получаемые от Webasto по W-bus температуру охлаждающей жидкости и напряжение автомобильного аккумулятора.

4) Вывести на дисплей статус работы Webasto

5) Отключение Webasto должно происходить либо по достаточной температуре охлаждающей жидкости либо по низкому напряжению автомобильного аккумулятора.

6) Звуковая сигнализация (мелодия) включения/выключения Webasto, нажатии кнопки и т.д.

7) Включение/выключение Webasto от кнопки на устройстве.

8) Управление ходовыми огнями – при появлении напряжения питания потребителей 2 группы – включение и при включении габаритов или падения напряжения автомобильного аккумулятора ниже 13,5 вольта (вежливая подсветка)– отключение.

Все это в принципе реализовано и описано в алгоритме управления (формат программы yED).

Схема в формате AutoCad
Печатка

Само устройство вид спереди и вид сзади

реализовано, но не до конца отлажено и есть проблемы с дисплеем – первый установленный отказался работать, второй тоже глючит. Возможно, перейду на OLED дисплей.

Спасибо за внимание.

Блок управления предпусковым подогревателем Webasto (Arduino + Webasto = Ardubasto)

Установили мне на авто пред пусковой подогреватель Webasto. После установки выяснилось, что управление им осуществляется не дискретным сигналом (как на предыдущем моем авто), а только по цифровой шине W-bus. Шина W-bus по электрическим параметрам является аналогом шины K-line и для нее есть интегральный конвертер K-line – RS232TTL — это микросхема L9637D. На этой микросхеме, на основе Arduino и решено было сделать управление подогревателем. Задача осложнялась тем, что Arduino поддерживает только протокол передачи по последовательному порту без контроля четности, а протокол W-bus работает с настройками порта 2400/8-E-1. Для обхода этого были сняты осциллограммы команды запуска Webasto и команды к Webasto реализованы тайминговыми задержками.

Функции блока управления:

1) При подаче питания на блок управления через нормально разомкнутые выходные контакты сигнализации (с дистанционным управлением по СМС) блок непрерывно посылает в шину W-bus команду на подогрев.

2) При подключении Arduino к компьютеру по USB и использовании программ диагностики Webasto можно диагностировать, управлять и стирать ошибки подогревателей. Для этого необходимо загрузить пустой скетч.

Схема устройства в формате AutoCad.
Внешний вид
Скетч

Это было первая полностью работоспособная реализация блока управления.

Дальнейшим развитием, пока до конца не реализованным является выполнение следующих функций и характеристик устройства:

1) Управлять включением по СМС от сигналки блоком Webasto – при кратковременном замыкании контакта сигналки Arduino должен встать на самоподхват по питанию на время работы Webasto.
2) Дополнить устройство монохромным дисплеем типа Nokia 5110.
3) Вывести на дисплей получаемые от Webasto по W-bus температуру охлаждающей жидкости и напряжение автомобильного аккумулятора.
4) Вывести на дисплей статус работы Webasto
5) Отключение Webasto должно происходить либо по достаточной температуре охлаждающей жидкости либо по низкому напряжению автомобильного аккумулятора.
6) Звуковая сигнализация (мелодия) включения/выключения Webasto, нажатии кнопки и т.д.
7) Включение/выключение Webasto от кнопки на устройстве.
8) Управление ходовыми огнями – при появлении напряжения питания потребителей 2 группы – включение и при включении габаритов или падения напряжения автомобильного аккумулятора ниже 13,5 вольта (вежливая подсветка)– отключение.

Все это в принципе реализовано и описано в алгоритме управления (формат программы yED).

Схема в формате AutoCad
Печатка

Само устройство вид спереди и вид сзади
реализовано, но не до конца отлажено и есть проблемы с дисплеем – первый установленный отказался работать, второй тоже глючит. Возможно, перейду на OLED дисплей.

Спасибо за внимание.

Автор: устаршой по званию

Источник

Arduino / manpage.adoc at master · arduino / Arduino · GitHub

Arduino / manpage.adoc at master · arduino / Arduino · GitHub

Постоянная ссылка

НАЗВАНИЕ

arduino — Интегрированная среда разработки для плат Arduino

ОБЗОР

arduino [ — проверить | —upload ] [ —board package : arch : board [: параметры ]] [ —port portname ] [ —pref name = значение ] [ -v | —verbose ] [ —preserve-temp-files ] [ ФАЙЛ.ino ]

arduino [ —get-pref [ предпочтение ]]

arduino [ —install -boards имя пакета : архитектура платформы [: версия ]]

arduino [ —install-library имя библиотеки [: версия ] [, имя библиотеки [: версия ], имя библиотеки [: версия ]]

ОПИСАНИЕ

Интегрированная среда разработки arduino позволяет редактировать,
составление и загрузка скетчей (программ) для Arduino
(и совместимые) платы микроконтроллеров.

Обычно запуск команды arduino запускает IDE, при необходимости загружая
любые файлы .ino, указанные в командной строке.

В качестве альтернативы, если задан любой из следующих параметров командной строки, графическое
будет показан интерфейс, а вместо этого будет выполняться одноразовая проверка (компиляция) или загрузка
будет сделано. Должен быть предоставлен один файл .ino. Если эскиз содержит
несколько файлов .ino, любой из них можно указать в командной строке, но
будет составлен весь эскиз.

При работе в одноразовом режиме может быть полезно установить
корп.путь , позволяющий сохранять промежуточные результаты сборки
между несколькими запусками и перекомпилировать только те файлы, которые были изменены.

Обратите внимание, что в MacOS X основным исполняемым файлом является
Arduino.app/Contents/MacOS/Arduino вместо arduino .

Обратите внимание, что в Windows из-за разницы между графическим интерфейсом пользователя и консольными приложениями
arduino_debug.exe — подходящий исполняемый файл для использования, если вы хотите использовать большинство
этих параметров командной строки.Версия программы запуска arduino.exe с графическим интерфейсом может выполнять
некоторые из функций, описанных ниже, но не выводят никаких сообщений на консоль,
это означает, что это довольно бесполезно, если вы хотите получить какую-либо обратную связь или иметь возможность хранить файлы журнала для
автоматизированное тестирование и др.

— проверить

Постройте эскиз.

— загрузка

Создайте и загрузите эскиз.

—get-pref [ предпочтение ]

Выводит значение заданного предпочтения на стандартный вывод.
ручей.Если значение не существует, ничего не печатается и
установлен статус выхода (см. СТАТУС ВЫХОДА ниже).
Если в качестве параметра предпочтения не указаны, он распечатывает все предпочтения.

—install -boards имя пакета : архитектура платформы [: версия ]

Получает список доступных поддерживаемых плат (платформ) и устанавливает указанную вместе со связанными с ней инструментами. Если версия не указана, устанавливается последняя версия.Если платформа с той же версией уже установлена, ничего не устанавливается и программа выходит с кодом выхода 1. Если платформа с другой версией уже установлена, она заменяется.

—install-library имя библиотеки [: версия ]

Выбирает список доступных библиотек и устанавливает указанную. Если версия не указана, устанавливается последняя версия. Если библиотека той же версии уже установлена, ничего не устанавливается и программа завершается с кодом выхода 1.Если уже установлена ​​библиотека другой версии, она заменяется.
Можно указать несколько библиотек через запятую.

— версия

Распечатайте информацию о версии и выйдите.

ОПЦИИ

— картон упаковка : арка : доска [: параметры ]

Выберите плату для компиляции.

  • пакет — идентификатор продавца (первый
    папки уровня внутри каталога оборудования ).По умолчанию
    Платы arduino используют arduino .

  • архитектура — архитектура платы (папки второго уровня
    внутри каталога оборудования ). Платы Arduino по умолчанию используют
    либо arduino: avr для всех плат на базе AVR (например, Uno, Mega
    или Leonardo) или arduino: sam для 32-битных плат на базе SAM
    (как Arduino Due).

  • плата — это фактическая плата для использования, как определено в платах .txt
    содержится в выбранной папке архитектуры. Например,
    arduino: avr: uno для Arduino Uno,
    arduino: avr: diecimila для Arduino Duemilanove или
    Diecimila, или arduino: avr: mega для Arduino Mega.

  • параметры — это список определенных параметров плат, разделенных запятыми.
    которые обычно отображаются в подменю меню «Инструменты». Для
    пример arduino: avr: nano: cpu = atmega168 , чтобы выбрать mega168
    вариант платы Arduino Nano.

Если эта опция не передана, значение из текущего
используются предпочтения (например, последняя плата, выбранная в среде IDE).

— порт имя порта

Выберите последовательный порт для загрузки эскиза.
В Linux и MacOS X это должен быть путь к файлу устройства (например,
/ dev / ttyACM0 ). В Windows это должно быть имя серийного номера.
порт (например, COM3 ).

Если эта опция не передана, значение из текущего
предпочтения (например, последний порт, выбранный в IDE).

— вербальная сборка

Включить подробный режим во время сборки. Если эта опция не указана,
подробный режим во время сборки отключен независимо от текущего
предпочтения.

— сохранить временные файлы

Сохранять временные файлы (предварительно обработанный эскиз, объектные файлы…) после завершения.Если не указано, временные файлы удаляются.

Эта опция действительна только вместе с — проверить или
— загрузить .

— программатор

Загрузить с помощью программатора. Установите, если вы используете внешний программатор, или
используя Arduino в качестве интернет-провайдера.

— вербальная загрузка

Включить подробный режим во время загрузки. Если эта опция не указана,
подробный режим при загрузке отключен независимо от текущего
предпочтения.

Эта опция действительна только вместе с — проверить или
— загрузить .

-v, —verbose

Включить подробный режим во время сборки и загрузки.
Эта опция имеет тот же эффект, что и использование —verbose-build
и —verbose-upload .

Эта опция действительна только вместе с — проверить или
— загрузить .

—preferences-file имя_файла

Прочитать и сохранить предпочтения из указанного имени файла вместо этого
по умолчанию.

—pref имя = значение

Устанавливает для параметра имя заданное значение .

Обратите внимание, что настройки, которые вы устанавливаете с помощью этой опции, не
проверено: недействительные имена будут установлены, но никогда не будут использоваться, недействительны
значения могут привести к ошибке позже.

— сохранить настройки

Сохраните любые (измененные) настройки в preferences.txt .В частности
— плата , — порт , —pref , —verbose , —verbose-build и
—verbose-upload может изменить текущие настройки.

ПРЕДПОЧТЕНИЯ

Arduino хранит список предпочтений в виде простых пар имени и значения.
Ниже некоторые из них задокументированы, но доступно гораздо больше.

sketchbook.path

Путь, по которому (обычно) хранятся эскизы.Этот путь также может
содержат некоторые специальные подкаталоги (см. ФАЙЛЫ ниже).

update.check

Если установлено значение true, среда IDE проверяет наличие новой версии при запуске.

редактор. Внешний

Если установлено значение true, использовать внешний редактор (IDE не позволяет
редактирует и перезагружает каждый файл перед проверкой).

путь сборки

Путь для строительства. Здесь такие вещи, как
предварительно обработанный.cpp файл, скомпилированные файлы .o и окончательный .hex
файл идти.

Если установлено, этот каталог должен уже существовать до запуска
команда arduino.

Если это предпочтение не установлено (что обычно бывает),
новая временная папка сборки создается при каждом запуске и удаляется
снова при закрытии приложения.

СТАТУС ВЫХОДА

0

Успех

1

Ошибка сборки или загрузки

2

Эскиз не найден

3

Неверный (аргумент) параметр командной строки

4

Предпочтение передано в —get-pref не существует

ФАЙЛОВ

% LOCALAPPDATA% / Arduino15 / предпочтения.txt (Windows)
~ / Библиотека / Arduino15 / preferences.txt (Max OS X)
~ / .arduino15 / preferences.txt (Linux)

В этом файле хранятся настройки, используемые для среды IDE, сборки и
загрузка эскизов.

Мои документы / Arduino / (Windows)
~ / Документы / Arduino / (Mac OS X)
~ / Arduino / (Linux)

Этот каталог называется «Скетчбук» и содержит
эскизы пользователя.Путь можно изменить через
sketchbook.path предпочтение.

Помимо эскизов, внутри могут находиться три специальных каталога.
альбом для рисования:

библиотеки
В этот каталог можно поместить

библиотек, одна библиотека
в подкаталог.

крепеж

Поддержка стороннего оборудования может быть добавлена ​​через
этот каталог.

инструменты

Внешние инструменты обработки кода (которые можно запускать через
меню «Инструменты» среды IDE) можно добавить сюда.

ПРИМЕРЫ

Запустите Arduino IDE с двумя открытыми файлами:

 arduino /path/to/sketch/sketch.ino /path/to/sketch/extra.ino 

Скомпилируйте и загрузите скетч, используя последнюю выбранную плату и последовательный порт

 arduino - загрузить /path/to/sketch/sketch.ino 

Скомпилируйте и загрузите скетч в Arduino Nano с процессором Atmega168,
подключен к порту / dev / ttyACM0 :

 arduino --board arduino: avr: nano: cpu = atmega168 --port / dev / ttyACM0 --upload / path / to / sketch / sketch.ino 

Скомпилируйте скетч, поместите результаты сборки в каталог build и
повторно использовать любые предыдущие результаты сборки в этом каталоге.

 arduino --pref build.path = / path / to / sketch / build --verify /path/to/sketch/sketch.ino 

Измените выбранную доску и путь сборки и больше ничего не делайте.

 arduino --pref build.path = / path / to / sketch / build --board arduino: avr: uno --save-prefs 

Установите последнюю поддержку платы SAM

 arduino - монтажные платы "arduino: sam" 

Установите опору платы AVR, 1.6,2

 arduino - монтажные платы "arduino: avr: 1.6.2" 

Установить библиотеку Bridge версии 1.0.0

 arduino - установка-библиотека "Мост: 1.0.0" 

Установить библиотеки Bridge и Servo

 arduino --install-library «Мост: 1.0.0, сервопривод: 1.2.0» 

ИСТОРИЯ

1.5.2

Добавлена ​​начальная поддержка командной строки. Это представило — проверить ,
— загрузка , — плата , — порт , — вербальный и -v .

1,5,5

Добавлена ​​поддержка специфичных для платы параметров в —board .

Имена файлов Sketch теперь интерпретируются относительно текущего
каталог, а не расположение самой команды arduino.

1.5.6

Введены —pref , —preferences-file , —verbose-build и
— вербальная загрузка .

Настройки, установленные с помощью —pref, запоминаются, настройки устанавливаются
через параметры —board , —port или —verbose нет.

При работе с —verify или —upload полный графический интерфейс не отображается.
больше показано. Сообщения об ошибках по-прежнему используют графическое всплывающее окно и
Windows, заставка по-прежнему отображается.

1.5.8

Введено —save-prefs .

1.6.2

Основной исполняемый файл в MacOS X изменен с
Arduino.app/Contents/MacOS/JavaApplicationStub с до
Arduino.app/Contents/MacOS/Arduino .

1.6.4

Введены — установочные платы и — установочные библиотеки .

—pref параметры теперь не сохраняются в файле настроек, просто
например —board и —port , если не указано —save-prefs .

Путь, переданный в —preferences-file или заданный в
build.path , preferences.path или settings.путь сейчас
интерпретируется относительно текущего каталога вместо
расположение самой команды arduino.

Вы не можете выполнить это действие в настоящее время.

Вы вошли в систему с другой вкладкой или окном. Перезагрузите, чтобы обновить сеанс.
Вы вышли из системы на другой вкладке или в другом окне. Перезагрузите, чтобы обновить сеанс.

Ардуино Пид основали линейные наборы робота набора робота последователя, обновления робота разделяют Джсумо

Все продукты поставляются запечатанными в коробке.Вся продукция тщательно упакована. Перед отправкой мы проверяем всю электронику и контролируем механику всех продуктов. Так что вы никогда не будете разочарованы, когда откроете нашу упаковочную коробку JSumo.

У нас есть 2 варианта доставки:

  • Зарегистрированная авиапочта (фиксированная цена 9,95 долларов США, бесплатно при заказе на сумму более 199 долларов США)
    Экспресс-доставка DHL Worldwide (в зависимости от веса)

Пример расписания для международных перевозок воздушным транспортом
Почта

Страны Европы

2-3 недели (иногда меньше)

США

3-4 недели

* Мексика

4-6 недель

Страны Африки

4-6 недель

Япония

2-3 недели

Катар

3-4 недели

Бразилия

3-6 недель

Малайзия

4-5 недель

* Перу, Эквадор, Колумбия

4-6 недель

Филиппины

4-6 недель

Россия

3-4 недели

Саудовская Аравия

3-4 недели

Страны Средней Азии

3-4 недели

Азербайджан

2-3 недели

Монголия, Китай

4-6 недель

Великобритания, Ирландия

3-4 недели

Латвия, Эстония, Литва

3 недели

Канада

2-3 недели

* Доставка из Мексики, Перу, Эквадора и Колумбии может потерять слишком много
время в переходах после выхода.

Мы отправляем код отгрузки, но его можно только отследить
внутри вашей страны. Мы предлагаем эти страны для экспресс-доставки DHL
(Время прибытия 3-5 дней) для более надежного и отслеживания
вариант.

Эти страны — единственные примеры. Если вашей страны нет в
список, не бойтесь. Мы отправляем по всему
мир включая вашу страну тоже 🙂

Какова ваша политика возврата?

Вы можете вернуть товар для возврата или обмена (если возникла из-за нашей ошибки) в течение 30 дней с даты отправки заказа.(Дата отгрузки заказа и уведомление о заказе отправляются вам по электронной почте). Все возвраты должны сопровождаться номером разрешения на возврат товара (номер заказа).

Если мы отправили вам не тот товар, или он прибыл с дефектом или повреждением

Нет проблем. Просто свяжитесь с нами в течение 30 дней с даты первоначальной доставки товара, чтобы организовать возврат вашей покупки. Отправьте нам фото не того товара. И мы отправим вам замену или вернем вам деньги за вашу покупку при условии, что возвращенные товары будут получены обратно в оригинальной упаковке вместе со всеми аксессуарами, гарантийными талонами, руководствами, программным обеспечением и т. Д., где применимо.

Поставщики и ресурсы беспроводной связи RF

О компании RF Wireless World

Веб-сайт RF Wireless World является домом для поставщиков и ресурсов радиочастотной и беспроводной связи.
На сайте представлены статьи, руководства, поставщики, терминология, исходный код (VHDL, Verilog, MATLAB, Labview), тестирование и измерения,
калькуляторы, новости, книги, загрузки и многое другое.

Сайт RF Wireless World охватывает ресурсы по различным темам, таким как RF, беспроводная связь, vsat, спутник, радар, волоконная оптика, микроволновая печь, wimax, wlan, zigbee,
LTE, 5G NR, GSM, GPRS, GPS, WCDMA, UMTS, TDSCDMA, bluetooth, Lightwave RF, z-wave, Интернет вещей (IoT), M2M, Ethernet и т. Д.Эти ресурсы основаны на стандартах IEEE и 3GPP. В нем также есть академический раздел, который охватывает колледжи и университеты по инженерным дисциплинам и MBA.

Статьи о системах на основе Интернета вещей

Система обнаружения падений для пожилых людей на основе Интернета вещей : В статье рассматривается архитектура системы обнаружения падений, используемой для пожилых людей.
В нем упоминаются преимущества или преимущества системы обнаружения падений Интернета вещей.
Читать дальше➤
Также обратитесь к другим статьям о системах на основе Интернета вещей следующим образом:
• Система очистки туалетов самолета.
• Система измерения столкновений
• Система отслеживания скоропортящихся продуктов и овощей
• Система помощи водителю
• Система умной торговли
• Система мониторинга качества воды.
• Система Smart Grid
• Система умного освещения на базе Zigbee
• Интеллектуальная система парковки на базе Zigbee.
• Система умной парковки на основе LoRaWAN


Статьи о беспроводной радиосвязи

В этом разделе статей представлены статьи о физическом уровне (PHY), уровне MAC, стеке протоколов и сетевой архитектуре на основе WLAN, WiMAX, zigbee, GSM, GPRS, TD-SCDMA, LTE, 5G NR, VSAT, Gigabit Ethernet на основе IEEE / 3GPP и т. Д. .стандарты.
Он также охватывает статьи, относящиеся к испытаниям и измерениям, по тестированию на соответствие, используемым для испытаний устройств на соответствие RF / PHY. СПРАВОЧНЫЕ СТАТЬИ УКАЗАТЕЛЬ >>.


Физический уровень 5G NR : Обработка физического уровня для канала 5G NR PDSCH и канала 5G NR PUSCH рассмотрена поэтапно.
Это описание физического уровня 5G соответствует спецификациям физического уровня 3GPP.

Читать дальше➤


Основы повторителей и типы повторителей :
В нем объясняются функции различных типов ретрансляторов, используемых в беспроводных технологиях.Читать дальше➤


Основы и типы замирания : В этой статье рассматриваются мелкомасштабные замирания, крупномасштабные замирания, медленные, быстрые замирания и т. Д., Которые используются в беспроводной связи.
Читать дальше➤


Архитектура сотового телефона 5G : В этой статье рассматривается блок-схема сотового телефона 5G с внутренними модулями 5G
Архитектура сотового телефона.
Читать дальше➤


Основы помех и типы помех: В этой статье рассматриваются помехи в соседнем канале, помехи в совмещенном канале,
Электромагнитные помехи, ICI, ISI, световые помехи, звуковые помехи и т. Д.Читать дальше➤


5G NR Раздел

В этом разделе рассматриваются функции 5G NR (New Radio), нумерология, диапазоны, архитектура, развертывание, стек протоколов (PHY, MAC, RLC, PDCP, RRC) и т. Д.
5G NR Краткий указатель ссылок >>
• Мини-слот 5G NR
• Часть полосы пропускания 5G NR
• 5G NR CORESET
• Форматы DCI 5G NR
• 5G NR UCI
• Форматы слотов 5G NR
• IE 5G NR RRC
• 5G NR SSB, SS, PBCH
• 5G NR PRACH
• 5G NR PDCCH
• 5G NR PUCCH
• Эталонные сигналы 5G NR
• 5G NR m-последовательность
• Золотая последовательность 5G NR
• 5G NR Zadoff Chu Sequence
• Физический уровень 5G NR
• Уровень MAC 5G NR
• Уровень 5G NR RLC
• Уровень 5G NR PDCP


Учебные пособия по беспроводным технологиям

В этом разделе рассматриваются учебные пособия по радиочастотам и беспроводной связи.Он охватывает учебные пособия по таким темам, как
сотовая связь, WLAN (11ac, 11ad), wimax, bluetooth, zigbee, zwave, LTE, DSP, GSM, GPRS,
GPS, UMTS, CDMA, UWB, RFID, радар, VSAT, спутник, WLAN, волновод, антенна, фемтосота, тестирование и измерения, IoT и т. Д.
См. УКАЗАТЕЛЬ Учебников >>


Учебное пособие по 5G — В этом учебном пособии по 5G также рассматриваются следующие подтемы по технологии 5G:
Учебное пособие по основам 5G
Частотные диапазоны
руководство по миллиметровым волнам
Волновая рама 5G мм
Зондирование волнового канала 5G мм
4G против 5G
Испытательное оборудование 5G
Сетевая архитектура 5G
Сетевые интерфейсы 5G NR
канальное зондирование
Типы каналов
5G FDD против TDD
Разделение сети 5G NR
Что такое 5G NR
Режимы развертывания 5G NR
Что такое 5G TF


В этом руководстве GSM рассматриваются основы GSM, сетевая архитектура, сетевые элементы, системные спецификации, приложения,
Типы пакетов GSM, структура или иерархия кадров GSM, логические каналы, физические каналы,
Физический уровень GSM или обработка речи, вход в сеть мобильного телефона GSM, установка вызова или процедура включения питания,
MO-вызов, MT-вызов, VAMOS, AMR, MSK, модуляция GMSK, физический уровень, стек протоколов, основы работы с мобильным телефоном,
Планирование RF, нисходящая линия связи PS и восходящая линия связи PS.
➤Подробнее.

LTE Tutorial , охватывающий архитектуру системы LTE, охватывающий основы LTE EUTRAN и LTE Evolved Packet Core (EPC).
Он обеспечивает связь с обзором системы LTE, радиоинтерфейсом LTE, терминологией LTE, категориями LTE UE, структурой кадра LTE, физическим уровнем LTE,
Стек протоколов LTE, каналы LTE (логические, транспортные, физические), пропускная способность LTE, агрегация несущих LTE, передача голоса по LTE, расширенный LTE,
Поставщики LTE и LTE vs LTE продвинутые.➤Подробнее.


RF Technology Stuff

На этой странице мира беспроводной радиосвязи описывается пошаговое проектирование преобразователя частоты RF на примере преобразователя RF UP с диапазоном 70 МГц в C.
для микрополосковой платы с использованием дискретных радиочастотных компонентов, а именно. Смесители, гетеродин, MMIC, синтезатор, опорный генератор OCXO,
колодки аттенюатора. ➤Подробнее.
➤Проектирование и разработка радиочастотного трансивера
➤Конструкция RF-фильтра
➤Система VSAT
➤Типы и основы микрополосковой печати
➤ОсновыWaveguide


Секция испытаний и измерений

В этом разделе рассматриваются контрольно-измерительные ресурсы, испытательное и измерительное оборудование для тестирования DUT на основе
Стандарты WLAN, WiMAX, Zigbee, Bluetooth, GSM, UMTS, LTE.УКАЗАТЕЛЬ испытаний и измерений >>
➤Система PXI для T&M.
➤ Генерация и анализ сигналов
➤Измерения слоя PHY
➤Тест устройства на соответствие WiMAX
➤ Тест на соответствие Zigbee
➤ Тест на соответствие LTE UE
➤Тест на соответствие TD-SCDMA


Волоконно-оптическая технология

Оптоволоконный компонент , основы, включая детектор, оптический соединитель, изолятор, циркулятор, переключатели, усилитель,
фильтр, эквалайзер, мультиплексор, разъемы, демультиплексор и т. д.Эти компоненты используются в оптоволоконной связи.
Оптические компоненты INDEX >>
➤Учебное пособие по оптоволоконной связи
➤APS в SDH
➤SONET основы
➤SDH Каркасная конструкция
➤SONET против SDH


Поставщики, производители радиочастотных беспроводных устройств

Сайт RF Wireless World охватывает производителей и поставщиков различных радиочастотных компонентов, систем и подсистем для ярких приложений,
см. ИНДЕКС поставщиков >>.

Поставщики радиочастотных компонентов, включая радиочастотный изолятор, радиочастотный циркулятор, радиочастотный смеситель, радиочастотный усилитель, радиочастотный адаптер, радиочастотный разъем, радиочастотный модулятор, радиочастотный трансивер, PLL, VCO, синтезатор, антенну, генератор, делитель мощности, сумматор мощности, фильтр, аттенюатор, диплексор, дуплексер, микросхема резистора, микросхема конденсатора, индуктор микросхемы, ответвитель, оборудование ЭМС, программное обеспечение для проектирования радиочастот, диэлектрический материал, диод и т.Производители радиокомпонентов >>
➤Базовая станция LTE
➤RF Циркулятор
➤RF Изолятор
➤Кристаллический осциллятор


MATLAB, Labview, встроенные исходные коды

Раздел исходного кода RF Wireless World охватывает коды, связанные с языками программирования MATLAB, VHDL, VERILOG и LABVIEW.
Эти коды полезны для новичков в этих языках.
ИНДЕКС ИСХОДНОГО КОДА >>
➤3-8 декодер кода VHDL
➤Код MATLAB для дескремблера
➤32-битный код ALU Verilog
➤T, D, JK, SR триггеры labview коды

* Общая информация о здоровье населения *

Выполните эти пять простых действий, чтобы остановить коронавирус (COVID-19).
СДЕЛАЙТЕ ПЯТЬ
1. РУКИ: часто мойте их
2. КОЛЕНО: Откашляйтесь
3. ЛИЦО: Не трогай его
4. НОГИ: держитесь на расстоянии более 3 футов (1 м) друг от друга
5. ЧУВСТВОВАТЬ: Болен? Оставайся дома

Используйте технологию отслеживания контактов >>, соблюдайте >> рекомендации по социальному дистанцированию и
установить систему видеонаблюдения >>
чтобы спасти сотни жизней.
Использование концепции телемедицины стало очень популярным в
таким странам, как США и Китай, чтобы остановить распространение COVID-19, поскольку это заразное заболевание.


RF Беспроводные калькуляторы и преобразователи

Раздел «Калькуляторы и преобразователи» охватывает ВЧ-калькуляторы, беспроводные калькуляторы, а также преобразователи единиц измерения.
Сюда входят такие беспроводные технологии, как GSM, UMTS, LTE, 5G NR и т. Д.
СПРАВОЧНЫЕ КАЛЬКУЛЯТОРЫ Указатель >>.
➤ Калькулятор пропускной способности 5G NR
➤5G NR ARFCN против преобразования частоты
➤Калькулятор скорости передачи данных LoRa
➤LTE EARFCN для преобразования частоты
➤Калькулятор антенн Яги
➤ Калькулятор времени выборки 5G NR


IoT-Интернет вещей Беспроводные технологии

Раздел IoT охватывает беспроводные технологии Интернета вещей, такие как WLAN, WiMAX, Zigbee, Z-wave, UMTS, LTE, GSM, GPRS, THREAD, EnOcean, LoRa, SIGFOX, WHDI, Ethernet,
6LoWPAN, RF4CE, Bluetooth, Bluetooth Low Power (BLE), NFC, RFID, INSTEON, X10, KNX, ANT +, Wavenis, Dash7, HomePlug и другие.Он также охватывает датчики Интернета вещей, компоненты Интернета вещей и компании Интернета вещей.
См. Главную страницу IoT >> и следующие ссылки.
➤ НИТЬ
➤EnOcean
➤Учебник по LoRa
➤Учебник по SIGFOX
➤WHDI
➤6LoWPAN
➤Zigbee RF4CE
➤NFC
➤Lonworks
➤CEBus
➤UPB

СВЯЗАННЫЕ ЗАПИСИ

Учебники по беспроводной связи RF

Различные типы датчиков

Поделиться страницей

Перевести страницу

Вот как создать робота-последователя линии Arduino

В прошлом мы создавали робота, позволяющего обходить препятствия, и робота, управляемого через Bluetooth.

То, что мы еще не сделали, — это один из самых популярных роботов, который делает каждый новичок, когда начинает заниматься робототехникой.

Последователь линии!

Сопровождающий за линией — это хороший робот, особенно когда он следует за линией так, как вы этого хотите.

Сначала я хотел бы отметить, что мы будем использовать максимально простой код без использования ПИД-регулятора, который используют большинство современных роботов.

Если вам нужен более продвинутый алгоритм, вам нужно прочитать о ПИД-регуляторах.У каждого робота, участвующего в соревнованиях, есть один или несколько контроллеров PID и 10 или более датчиков линии, поэтому он может очень быстро и точно отслеживать линию.

Необходимые детали

Нам также понадобится деталь, напечатанная на 3D-принтере, чтобы прикрепить наши датчики слежения за линией к шасси на надлежащей высоте над землей, вы можете скачать ее здесь: https://www.thingiverse.com/thing:2594606

Этот робот очень похож на нашего последнего робота, управляемого через Bluetooth. Нам нужно подключить 4 кабеля к 5 В, но на Arduino есть только один вывод 5 В.Вот почему нам понадобилось использовать макетную плату (или просто ее кусок). У меня была макетная плата среднего размера с отсоединяемыми линиями электропередач. Итак, я использовал один из них для подключения всех контактов 5V и GND без пайки.

Держатель для 3D-печати должен быть закреплен в передней части робота, и вам следует попробовать закрепить на нем датчики, как показано на изображении ниже.

Светодиоды на датчике показывают, обнаруживает ли он линию или нет. Возможно, вам потребуется откалибровать его, прежде чем он будет работать безупречно в вашей системе. На датчике есть потенциометр, который можно использовать для регулировки его точности.

Также следует иметь в виду, что точность определения линии зависит также от условий освещения.

Логика здесь следующая:

  • Когда левый и правый датчики не обнаруживают линии, и в то же время средний датчик обнаруживает линию, робот должен двигаться вперед.
  • Когда правый датчик обнаруживает линию, робот должен повернуть направо.
  • Когда левый датчик обнаруживает линию, робот должен повернуть налево.

Вот и все, что он делает.Неполное право! Но неплохой алгоритм для начала. Здесь есть много возможностей для улучшения.

Функции двигателя точно такие же, как и в нашем примере робота, управляемого через Bluetooth, с той лишь разницей, что здесь низкие значения ШИМ. Этот робот должен двигаться медленно, чтобы не сбиться с пути. Не стесняйтесь экспериментировать с более высокими скоростями, чтобы проверить их ограничения.

Вот робот, работающий на темном полу, неплохо. Довольно неэффективно, но хорошая новость заключается в том, что он продолжает работать.

И на сегодня все. Одна из задач, стоящих перед вами прямо сейчас, — найти способы улучшить работу этого робота.

Вам также может понравиться:

Программа мобильного робота Arduino с использованием mBlock | 3 Line Follow

ОБЗОР

PikaBot — это мобильный робот, основанный на Maker UNO (совместим с Arduino UNO). Он позволяет пользователям изучать электронику, датчики, микроконтроллеры и кодирование, развлекаясь. Он также поставляется с тщательно продуманной коробкой, которую можно использовать как основу и крышку мобильного робота!

mBlock — это программный инструмент, разработанный на основе Scratch 3.0 и код Arduino. Это позволяет детям изучать программирование с использованием блочного языка программирования.

Я создал расширение для PikaBot в mBlock, чтобы пользователи без знаний в области электроники или программирования могли начать программировать и изучать робототехнику в увлекательной и легкой форме.

Это третий урок (следующая строка) из этой серии. Ознакомьтесь с другими уроками по ссылкам ниже:

  • Программа мобильного робота Arduino с использованием mBlock | 1 Move Around
  • Программа мобильного робота Arduino с использованием mBlock | 2 Обнаружение объекта

НАСТРОЙКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

ОНЛАЙН-ВЕРСИЯ

Шаг 1: Перейдите в редактор веб-кода mBlock

Перейдите в редактор веб-кода mBlock по адресу: https: // ide.mblock.cc/

Шаг 2: Добавьте устройство PikaBot

Щелкните устройство на левой панели

Нажмите кнопку добавить и выберите расширение PikaBot

ОФЛАЙН ВЕРСИЯ

Шаг 1: Загрузите и установите mBlock5

Загрузите программное обеспечение mBlock5 по адресу: https://www.mblock.cc/en-us/download/

Щелкните загруженный файл, чтобы установить Программное обеспечение mBlock5

Шаг 2: Добавьте устройство PikaBot расширение

Щелкните устройство на левой панели

Нажмите кнопку добавить и выберите расширение PikaBot

ОБНАРУЖЕНИЕ ПРЕПЯТСТВИЯ

КОДИРОВКА

Перетащите , когда pikabot запускает блок из категории События .

Включите двигатели, перетащив инициализировать левый двигатель ... блок из категории Motor и опустите его под , когда pikabot запускает блок . Щелкните здесь , чтобы узнать, как использовать Motors для PikaBot.

Инициализировать линейные датчики путем перетаскивания инициализировать линейный датчик: .. блок из категории Датчики и опустить его под инициализировать левый двигатель ...

Контакты датчика линии по умолчанию для PikaBot:

  • Левый ИК — A0
  • Правый ИК-порт — A1

Измените значения контактов, если вы НЕ используете контакты по умолчанию, как указано в руководстве PikaBot.

Перетащите навсегда , , если , и , если еще , заблокируйте из категории Control и отпустите, как показано ниже.

Перетащите блок '' и '' из категории Operator и поместите его в первый блок , если еще блок .

Перетащите блок not '' из категории Operator в блок '' и '' .

Перетащите влево IR обнаруживает темный блок из категории Датчики и помещает его в , а не в и , если еще блок .Измените левый ИК-датчик определяет темноту правый ИК-датчик обнаруживает темноту с помощью раскрывающегося списка на блоке.

Перетащите вперед , поверните налево и поверните направо блоков из категории Motor и отпустите, как показано ниже.

Эта программа позволит PikaBot следовать черной линии на белом фоне

ЗАГРУЗИТЬ

Подключите USB-кабель от вашего ПК к PikaBot. Убедитесь, что он находится в режиме «Загрузить», и нажмите кнопку «Подключиться» в левом нижнем углу mBlock.

Затем выберите правильный COM-порт для вашего устройства и нажмите «Подключиться».

ТЕСТИРОВАНИЕ

БОЛЬШЕ ПРОГРАММИРОВАНИЯ

Эта программа объединяет все уроки PikaBot из этой серии.

  • Нажмите кнопку, чтобы запустить PikaBot для движения по линии
  • PikaBot тормозит, если препятствие меньше 15 см
  • PikaBot начинает движение по линии, если препятствие превышает 15 см
  • PikaBot движется вперед, когда оба датчика линии обнаруживают яркий
  • PikaBot поворачивает налево, когда левый линейный датчик определяет темноту
  • PikaBot поворачивает направо, когда правый линейный датчик обнаруживает темноту

Arduino Line Follower Robot

Line Follower Robot, как следует из названия, представляет собой автоматизированное управляемое транспортное средство, которое следует визуальная линия, встроенная в пол или потолок.Обычно визуальная линия — это путь, по которому идет робот-последователь линии, и это будет черная линия на белой поверхности, но возможен и другой путь (белая линия на черной поверхности). Некоторые продвинутые роботы-следопыты используют невидимое магнитное поле в качестве своего пути.

Большие роботы-следящие за линией обычно используются в промышленности для поддержки автоматизированного производственного процесса. Они также используются в военных целях, для оказания помощи людям, служб доставки и т. Д.

Робот-последователь линии — один из первых роботов, с которыми новички и студенты получат свой первый опыт работы с роботами.В этом проекте мы разработали простого робота-следящего за линией, используя Arduino и некоторые другие компоненты.

Принципиальная схема

Необходимые компоненты

  • Arduino UNO (или Arduino Nano) [Купить здесь]
  • ИС драйвера двигателя L293D [Купить здесь]
  • Мотор-редукторы x 2
  • Модуль датчика шасси робота
  • 9019 2

  • Черная лента (электроизоляционная лента)
  • Соединительные провода
  • Источник питания
  • Разъем аккумулятора
  • Держатель аккумулятора

Примечание : Мы использовали готовый модуль ИК-датчика, который состоит из ИК-светодиода и фото Диод.Если у вас его нет, мы объяснили, как построить его самостоятельно.

Блок-схема проекта

Робот-следящий за линией, построенный в этом проекте, разделен на 4 блока. На следующем изображении показана блок-схема робота-следящего за линией.

Описание блок-схемы

Датчики (ИК-датчик) : Мы использовали модуль ИК-датчика в качестве датчика обнаружения линии для проекта. Он состоит из ИК-светодиода, фотодиода и некоторых других компонентов, таких как компаратор, светодиод и т. Д.

Как упоминалось ранее, мы использовали предварительно собранный ИК-датчик. Если у вас его нет, вы можете сделать свой собственный датчик, используя следующую схему.

Работа ИК-датчика и его объем в этом проекте будут объяснены в реальной работе робота-следящего за линией.

Контроллер (Arduino UNO) : Arduino UNO является основным контроллером в проекте. Данные от датчиков (ИК-датчики) будут переданы в Arduino, и он подаст соответствующие сигналы на микросхему драйвера двигателя.

Драйвер двигателя (L293D) : ИС драйвера двигателя L293D используется в этом проекте для управления двигателями робота. Он принимает сигналы от Arduino на основе информации от ИК-датчиков.

Примечание : Электропитание двигателей должно подаваться от микросхемы драйвера двигателя. Следовательно, выберите подходящий источник питания, которого достаточно для всех компонентов, включая двигатели.

Двигатели (мотор-редукторы) : Мы использовали два мотор-редуктора в задней части робота-следящего за линией.Эти двигатели обеспечивают больший крутящий момент, чем обычные двигатели, и могут также использоваться для несения некоторой нагрузки.

Работа робота-повторителя линии Arduino

В этом проекте мы разработали робота-повторителя линии Arduino. Работа с проектом довольно проста: найдите черную линию на поверхности и двигайтесь по ней. Подробная работа объясняется здесь.

Как указано на блок-схеме, нам нужны датчики для обнаружения линии. Для логики обнаружения линии мы использовали два ИК-датчика, которые состоят из ИК-светодиода и фотодиода.Они размещаются таким образом, чтобы они отражали свет, то есть бок о бок, поэтому всякий раз, когда они приближаются к отражающей поверхности, свет, излучаемый ИК-светодиодом, будет обнаружен фотодиодом.

На следующем изображении показана работа типичного ИК-датчика (пара ИК-светодиод — фотодиод) перед светлой поверхностью и черной поверхностью. Поскольку коэффициент отражения световой поверхности высок, инфракрасный свет, излучаемый ИК-светодиодом, будет максимально отражаться и обнаруживаться фотодиодом.

В случае черной поверхности, которая имеет низкий коэффициент отражения, свет полностью поглощается черной поверхностью и не достигает фотодиода.

Используя тот же принцип, мы настроим ИК-датчики на роботе-следящем за линией таким образом, чтобы два ИК-датчика находились по обе стороны от черной линии на полу. Схема показана ниже.

Когда робот движется вперед, оба датчика ждут, пока линия не будет обнаружена. Например, если ИК-датчик 1 на изображении выше обнаруживает черную линию, это означает, что впереди есть правая кривая (или поворот).

Arduino UNO обнаруживает это изменение и соответственно отправляет сигнал драйверу двигателя. Чтобы повернуть направо, двигатель с правой стороны робота замедляется с помощью ШИМ, в то время как двигатель с левой стороны работает с нормальной скоростью.

Аналогичным образом, когда ИК-датчик 2 первым обнаруживает черную линию, это означает, что впереди идет левый поворот, и робот должен повернуть налево. Чтобы робот повернул налево, двигатель на левой стороне робота замедляется (или может быть полностью остановлен или может вращаться в противоположном направлении), а двигатель на правой стороне работает с нормальной скоростью.

Arduino UNO непрерывно отслеживает данные с обоих датчиков и поворачивает робота в соответствии с обнаруженной ими линией.

Код

Примечание :

  • Для повышения эффективности обнаружения черной линии количество датчиков можно увеличить. Набор датчиков будет более точным, чем два датчика.
  • В этом проекте (где используются два датчика) очень важно расположение датчиков. Ширина черной линии играет важную роль при размещении датчиков.
  • Датчик для обнаружения линии также может быть сконструирован с использованием пары светодиодов и LDR.

Применение робота-повторителя линии

  • Робот-повторитель линии обычно используется для автоматизации процессов в промышленности, военном и потребительском секторах.
  • Они очень полезны, так как могут работать без какого-либо надзора, т.е. они работают как транспортные средства с автоматическим управлением.
  • Благодаря дополнительным функциям, таким как предотвращение препятствий и другие меры безопасности, роботов-следящих за линией можно использовать в автомобилях без водителя.

Конструкция и видео вывода

Это стартовый комплект, который появился, когда движению робота уделяется высокий приоритет. Он следует по визуальному пути линии, и некоторые продвинутые роботы-последователи линии используют невидимое магнитное поле в качестве своего пути.

Как вы знаете, приложения роботов в военной, промышленной и бытовой сферах пользуются большим спросом. Мы предложили Arduino Robot Kits , который удовлетворит все ваши желания.Взгляните на эти наборы роботов Arduino, которые имеют широкий спектр приложений и доступны по очень низким ценам.

Если у вас есть сомнения, поделитесь с нами в разделе комментариев ниже. Мы очень рады быстро ответить.

Рекомендуем прочитать:

Как собрать мобильного робота с помощью Arduino | Часть 4

Готовы заставить вашего робота реагировать на окружающую среду с помощью датчиков?

На этой неделе мы сфокусируемся на инфракрасных датчиках, чтобы решить общую проблему в робототехнике: отслеживание и уклонение от линии .

Сейчас хорошее время, чтобы убедиться, что ваш робот может двигаться. Если вы не завершили урок № 3, я рекомендую сначала проверить его, прежде чем приступать к задаче на этой неделе.

Создайте мобильного робота, чтобы следовать его примеру: цели и материалы

Каждую неделю я буду сообщать вам цели (задачи урока) и все материалы, которые вам понадобятся для выполнения проекта.

Мне очень нравится смотреть, над чем вы работаете, поэтому, пожалуйста, не забывайте отмечать меня ( @learnrobotics ) в Instagram и Facebook обо всех ваших успехах!

Часть 4 — Цели и задачи

  • Узнайте об ИК-датчиках и о том, как подключить их к Arduino
  • Настройка ИК-датчиков в Arduino
  • Настройка операторов IF
  • Завершите испытания роботов (следование линии и уклонение)
  • Время Продолжительность: Примерно 4 часа.На этой неделе это еще один долгий урок, так что не стесняйтесь разбивать его на разделы!

Материалы к этому уроку

Эта серия руководств основана на автомобильном комплекте Elegoo Arduino Smart Robot. Вы можете приобрести комплект на Amazon примерно за 70 долларов. Я рекомендую этот комплект, потому что он обеспечивает хорошее соотношение цены и качества, а его компоненты можно использовать в ряде робототехнических проектов.

Хотя вы можете следовать инструкциям, не покупая комплект, всегда выгоднее познакомиться с роботом и попробовать уроки на себе.С учетом сказанного, если у вас ограниченный бюджет, я перечислил все компоненты в первой части этой серии руководств.

Дополнительные материалы

Требуется на этой неделе:

Входит в комплект роботов Elegoo:

Прочие материалы:

Пора начинать урок на этой неделе!

Что такое инфракрасный (ИК) датчик?

Прежде чем мы перейдем к науке об ИК-датчиках, я хочу дать вам пару наглядных примеров на тот случай, если вы никогда раньше не видели ИК-датчик.

Как видите, ИК-датчик состоит из двух светодиодов, потенциометра и имеет 3 контакта (GND, VCC, OUT, в произвольном порядке). Также имеется встроенный чип компаратора LM393, который принимает показания и отправляет их через сигнальный вывод (OUT) для ввода в Arduino.

Если вы еще не сделали этого, возьмите ИК-датчики из своего комплекта . Взгляните на них и посмотрите, сможете ли вы идентифицировать все компоненты датчика.

Вы заметите, что ИК-датчики выше немного отличаются.Тот, что справа (как и наш комплект), специально разработан для обнаружения линий, а тот, что слева, предназначен для обнаружения объектов и измерения расстояния. Вы можете использовать любой из них для этой деятельности. Если вы используете ИК-модуль, который выглядит как на первом рисунке, я рекомендую обернуть светодиоды изолентой, чтобы избежать помех. .

Инфракрасные датчики

работают при входном напряжении (VCC) +5 В. Вы захотите обеспечить питание и заземление от Arduino.Вскоре мы поговорим о проводке подробнее, но пока у нас есть эта диаграмма, я хотел бы упомянуть об этом, если вам интересно.

Как работают ИК-датчики?

Разблокируйте этот контент, указав ниже свой адрес электронной почты! Это совершенно БЕСПЛАТНО!

Датчики

работают, испуская луч инфракрасного (ИК) света и измеряя отраженный сигнал.

На основании приведенной выше диаграммы, как вы думаете, мы можем использовать эту информацию, чтобы наш робот двигался по линии?

Когда наш робот находится на полу, мы можем использовать высококонтрастную цветную ленту (например, синюю или черную для светлых полов или белую или желтовато-коричневую для темных полов) и использовать значение отражательной способности, чтобы определить, или не двигаться вперед или от этого цвета.

Эта концепция дает нам основу для линии, следующей за . Избежать линий можно, изменив нашу логику. Вместо того, чтобы двигаться к ленте, мы хотим остановиться, вернуться назад и развернуться, когда мы обнаруживаем ленту.

Основываясь на фотографии выше, мы можем сделать обоснованное предположение, что (светлый) пол будет иметь высокие значения , а синий пол будет иметь низкие значения. Одна вещь, которую следует учитывать, заключается в том, что если ваш потенциометр повернуть, вы можете получить противоположные результаты по сравнению с нашим прогнозом.Способ исправить это — поиграть с ручкой, пока у вас не будут показания, которые достаточно различаются, чтобы принимать решения.

Итак, это примерно столько информации, которую вам нужно знать об ИК-датчиках и связи для этого урока, но если вам больше интересна эта тема, я рекомендую ознакомиться с этой статьей Sparkfun. Прочтите, чтобы узнать, как подключить ИК-датчики к вашему роботу.

Как подключить ИК-датчик к нашему автомобилю-роботу с помощью Arduino

Помните, как мы говорили о таблицах данных на предыдущем уроке?

Итак, вот паспорт ИК-датчика (см. Стр. 8, KY-033), который я использую с автомобильным комплектом Elegoo Smart Robot.

В противном случае вы можете использовать эту модель Fritzing для подключения ИК-датчика.

Вы заметите, что у нас есть сигнальная линия, подключенная как цифровой вход к контакту 2. Хотя некоторые из вас могут не согласиться с этой конфигурацией, выслушайте меня.

Цель этого проекта — заставить нашего робота следовать за линиями или избегать их.

Следовательно, у нас есть только два условия, которые нам нужно знать: 1) на линии и 2) вне линии / на полу

Поскольку цифровые входы предоставляют нам сигнал вкл / выкл, истина / ложь, 1/0, этого может быть достаточно, чтобы отличить нахождение на полу от нахождения на ленте.И бинго! Во что бы то ни стало, мы можем использовать это для решения проблемы.

А теперь подключим наши ИК-датчики. Примечание: цвета проводов НЕ должны совпадать с цветами проводов на схеме!

Красный: + 5V
Черный: GND
Желтый: сигнал — подключение к цифровому выводу 2.

Добавьте второй ИК-датчик, подключив красный и черный к + 5 В и GND соответственно, а желтый сигнал — к любому открытому цифровому контакту (я выберу контакт 12).

Третий ИК-датчик можно настроить так же, как второй и первый.Просто используйте любой открытый цифровой контакт для сигнального провода.

Должны ли мы использовать аналоговый вывод для нашего ИК-датчика?

В некоторых случаях (в частности, при помехах) логического сигнала недостаточно, чтобы по-настоящему различить, в каком состоянии мы находимся. Поэтому, если вы обнаружите, что тестируете цифровую конфигурацию, и все время получаете истинные показания, независимо от того, где начинается лента, вы можете… A) попробовать откалибровать чувствительность ИК-датчика с помощью шкалы потенциометра или B) переключить сигнальный контакт на аналоговый вход (контакт A1).

Затем, когда вы получите показания от ИК-датчика, вы получите диапазон значений от 0 до 1023. Исходя из этого, мы можем определить наш порог движения по ленте и диапазон значений, когда мы находимся на полу.

Если вам интересно, почему 0-1023 является «волшебным» диапазоном, то это потому, что Arduino имеет 10-битный аналого-цифровой преобразователь. Таким образом, этот сигнал фактически равен 2 10 = 1024, а диапазон составляет 0-1023. Вы можете прочитать больше об аналоговых сигналах в документации Arduino здесь.

В области робототехники много проб и ошибок. Я рекомендую настроить вашего робота в обоих направлениях и во время этого упражнения узнать, какой метод лучше всего подходит для вас.

Контент разблокирован! Приятного вам скачивания!

Настройка программного обеспечения ИК-датчика

для автомобиля-робота с использованием Arduino

В этом руководстве я собираюсь продолжить использование цифровой конфигурации.

В этом примере мы будем использовать два ИК-датчика.Левый IR находится на контакте 2; правый ИК-порт находится на контакте 12. Цель состоит в том, чтобы подключить наши ИК-датчики и затем считывать данные с обоих датчиков каждые 5 секунд. Мы будем отображать данные с помощью линий печати на последовательном мониторе.

Как настроить левый и правый ИК-датчики в эскизе?

Прежде чем я скажу вам ответ, откройте мою статью «Четыре шага к написанию программы Arduino».

Используя эту методологию, создайте план того, что мы хотим сделать.

  1. 1) Определите свою программу
  2. 2) Объявить каждый вход / выход (I / O)
  3. 3) Создайте соответствующий метод (ы)
  4. 4) Назовите свои методы в цикле ()

Не обманывайте себя.Я вижу ты там!

Я намеренно не вставлял код сюда, потому что знал, что у вас может возникнуть соблазн просто скопировать его, не попробовав самостоятельно! 😉

ИК-датчик + код Arduino Walk-Through

Этот премиум-раздел является частью нашего электронного курса по робототехнике. Я рекомендую присоединиться к нему, если вы хотите развить свои навыки робототехники, электроники и программирования. Все не выходя из дома!

Помимо углубленного изучения решений, примеров кода и взаимодействия с нашими инструкторами, вы также получите доступ к нашим тестам, проектам и сертификату курса.

Нажмите здесь, чтобы записаться на электронный курс по робототехнике!

Увидимся в курсе!

Давайте поговорим об условиях и ответных действиях

Мы будем использовать операторы IF, чтобы проверить, выполняется ли указанное условие. Операторы IF запускают код только при выполнении заданного условия. Часто они используются при определении того, как реагировать в зависимости от текущего состояния.

Если произойдет указанное условие, сделайте это, иначе сделайте то.

Вот как это выглядит в нашем скетче Arduino.

 if (condition) {
   // сделай это
еще{
  // сделай это
}
 

Существуют более сложные операторы IF, которые вы можете использовать, но для целей этого упражнения вам не нужно усложняться, чем проверка единственного условия.

Но, если вам интересно, вы можете поместить оператор IF в тело оператора IF, чтобы проверить условие после его выполнения. Это называется вложенных операторов IF , о которых мы узнаем больше в следующем уроке.

А пока давайте поговорим о написании оператора условия .

При сравнении значений вы будете использовать БУЛЕВЫЕ ОПЕРАТОРЫ :

  • && и
  • || или
  • ! не
  • == проверка на равенство
  • = установка переменной равной
  • > больше
  • > = больше или равно
  • <менее
  • <= меньше или равно

Вместо того, чтобы объяснять каждый, я покажу вам пример для каждого.

Пр. 1 Чтобы проверить, если valueA = 1 и valueB = 7, напишите это так:

 if (valueA = 1 && valueB = 7) {
    // ... здесь код ...
} 

Пр. 2 Чтобы проверить, если valueA = 3 или valueB = 9, вы напишите это так:

 if (valueA = 3 || valueB = 9) {
    // ... здесь код ...
} 

Пр. 3 Чтобы проверить, не равно ли значение A 10, запишите его так:

 if (valueA! = 10) {
   //...код здесь ...
} 

Пр. 4 Чтобы проверить, равно ли valueA valueB, напишите это так:

 if (valueA  ==  valueB) {
    // ... здесь код ...
} 

Код будет запущен, только если valueA и valueB — одно и то же значение.

Пр. 5 Для установите valueA равно valueB, вы напишете это так:

 значениеA  =  значениеB 

Пр. 6 Чтобы проверить, на ли значение A меньше значения B, напишите его так:

 if (valueA  < valueB) {
    //...код здесь ...
} 

Таким же образом можно использовать меньше или равно, больше и больше или равно. Меньше или равно и больше или равно включает число, которое вы проверяете в условии.

, то есть valueA <= 10 означает, что если valueA на меньше 10 или равно 10 , условие будет выполнено, и будет выполнен оператор IF.

Вот пример оператора IF с оператором Condition.

Метод создания ИК-датчика

Теперь мы готовы создать метод для проверки наших ИК-датчиков.

Один из методов, который мы напишем, — это bool onTape (int IRsensor) . Вот информация о методе.

Тип возврата : boolean (bool)
Имя метода: onTape
Входные параметры: int IRsensor
Функция: Проверяет наличие на ленте указанного ИК-датчика. Если да, возвращается ИСТИНА.

 bool onTape (int IRsensor) {
// код здесь ...
   вернуть истину;
} 

Попробуйте использовать информацию выше для создания метода onTape (int IRsensor) , прежде чем продолжить.

Другой метод, который мы напишем, — это bool onTape (int IRsensor) . Вот информация о методе.

Тип возврата : void (void)
Имя метода: lineFollow
Входные параметры: оба ИК-датчика и их соответствующие пороги
Функция: Line follow program — робот будет следовать синим линиям на полу.

 void lineFollow (int irLeft, int irRight, int thresholdL, int thresholdR) {
// код здесь ...
} 

Как программа должна выглядеть логически…

Как только мы узнаем, записаны мы или нет, мы можем маневрировать роботом влево или вправо, чтобы СЛЕДОВАТЬ или ИЗБЕГАТЬ линии. Наглядная блок-схема этой логики показана ниже.

Переведите эти шаги в код Arduino

.

  1. Проверить: ЕСЛИ ЗАЯВЛЕНИЕ — есть ли на ленте левый ИК?
    Да — мы хотим переместить влево (чтобы остаться на ленте)
  2. Проверить: ЕСЛИ ЗАЯВЛЕНИЕ — правильное ИХ записано на ленте?
    Да — мы хотим переместить вправо (чтобы остаться на ленте)
  3. Продолжайте движение в текущем направлении, пока один датчик не покажет «пол»

Мы будем использовать наши onTape () , move () и IF STATEMENTS для разработки кода.

Добавить комментарий

Ваш адрес email не будет опубликован.