3D-СКАНЕР «ФАВОРИТ»

X Международный конкурс научно-исследовательских и творческих работ учащихся
Старт в науке

3D-СКАНЕР «ФАВОРИТ»

Агнистова А.Ю. 1
1МБУ ДО ЦНТТ
Шишкин Е.М. 1
1МБУ ДО ЦНТТ
Автор работы награжден дипломом победителя III степени
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Аннотация

Проект посвящён основам 3D-технологии. Этот проект является логическим завершением нашей работы за 2018-2019 уч. год: "СТАРТАП: «3D-СКАНЕР СВОИМИ РУКАМИ»" и имеет полный комплект документации, позволяющей самостоятельно изготовить 3D-сканирующее устройство. Проект за 2019-2020 уч. год отличается от предшествующего тем, что имеет более полную проработку каждого элемента конструкции за счёт широкого применения унифицированных узлов и деталей. Это позволило снизить трудоёмкость изделия, его себестоимость с одновременным повышением основных технических характеристик.

Объект исследования в проекте: 3D-моделирование физических тел.

Предмет исследования в проекте:лазерное сканирование физического тела.

Цель проекта:создание бюджетного 3D-сканирующего устройства доступного для самостоятельного повторения и имеющего высокие технические характеристики.

Гипотеза:лазерное сканирование позволяет построить 3D-копию исследуемого физического тела в цифровом формате.

Задачи проекта: разработать 3D-сканирующее устройство; изготовить 3D-сканирующее устройство; провести финансово-экономическое обоснование проекта.

Методы исследования, применённые в проекте:метод обобщения, синтез, анализ, метод наблюдения и сравнения, метод лабораторных и натуральных испытаний.

Практическая значимость проекта:разработана документация для самостоятельной сборки 3D-сканирующего устройства «Фаворит».

Введение

Сущность 3D-формата заключается в изготовлении виртуальной копии заданного объекта в цифровом формате, а сам изготавливаемый объект воспроизводится с нужными свойствами с помощью 3D-принтеров. 3D-формат можно разделить на два отдельных малосвязанных между собой процесса: это создание виртуальной цифровой копии объекта и воспроизводство его с нужными свойствами. Создание виртуальной цифровой копии объекта возможно двумя способами: это программный метод - с помощью специальных программ и метод сканирования - с помощью различных дальномеров при копировании уже реально существующего объекта для его дальнейшего тиражирования. В современном мире 3D-технология широко используется как на производстве, так и частными людьми, занимающимися 3D-моделированием физических объектов. Приобретение готового 3D-сканера в собственное пользование не всегда экономически оправдано, так как стоимость отдельных моделей может достигать до миллиона рублей.

Объект исследования в проекте: 3D-моделирование физических тел.

Предмет исследования в проекте:лазерное сканирование физического тела.

Цель проекта:создание бюджетного 3D-сканирующего устройства доступного для самостоятельного повторения и имеющего высокие технические характеристики.

Гипотеза:лазерное сканирование позволяет построить 3D-копию исследуемого физического тела в цифровом формате.

Задачи проекта: разработать 3D-сканирующее устройство; изготовить 3D-сканирующее устройство; провести финансово-экономическое обоснование проекта.

Методы исследования, применённые в проекте:метод обобщения, синтез, анализ, метод наблюдения и сравнения, метод лабораторных и натуральных испытаний.

Практическая значимость проекта:разработана документация для самостоятельной сборки 3D-сканирующего устройства «Фаворит».

Теоретические основы работы 3D-сканера

1.1 Краткая историческая справка

Технология трехмерного сканирования появилась в конце 20-го века. Устройство 3D-сканера детально исследует объект, и полученные данные форматирует в цифровую копию. Первый прототип 3D-сканера был заявлен в 1960 году [1], хотя и не обладал высокими техническими характеристиками. После 1985 года сканирующие устройства дополнили лазерами, источниками белого света и затемнения. В 80-х годах прошлого века появились контактные датчики, которые использовались в 3D-сканерах для оцифровки поверхности твердых объектов, но такой способ сканирования занимал много времени и не отличался высокой точностью. В 1994 году компания 3DScanner выпустила 3D-сканер REPLICA, который давал точный (для того времени) и быстрый результат, это стало большим шагом в сфере 3D-технологий [2].

1.2 Методы и технологии трёхмерного сканирования

Методы трехмерного сканирования разделяют на два основных: это контактный метод и бесконтактный. Контактный метод представляет собой следующее: устройство сканирует объект с помощью физического контакта, но объект обязательно должен находиться на прецизионной поверочной плите. Контактный 3D-сканер отличается высокой точностью, но сложен в использовании, т.к. можно повредить форму объекта. Бесконтактный метод разделают на два: лазерный и оптический. Лазерная технология основывается на работе лазерных дальномеров. В оптической технологии в отличие от лазерной используется лазер второго класса безопасности. Он отличается высокой точностью и скоростью выполнения сканирования. Даже при движении сканируемого объекта изображение не будет искажено, поэтому такой вид технологии используют в качестве 3D-сканера человека. В отличие от лазерной технологии оптическая технология не нуждается в нанесении специальных разметок, но такой вид технологии не подойдет для сканирования зеркальных или блестящих объектов.

1.3 Лазерная технология трёхмерного сканирования

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

Устройство 3D-сканера «Фаворит»

Внешний вид устройства представлен на рис. №1:

Рис. № 1. 3D-сканер «Фаворит».

Для снижения трудоёмкости при изготовлении сканера нами были использованы унифицированные узлы и детали от фирмы «СОБЕРИЗАВОД» https://www.soberizavod.ru/

2.1 Корпусные элементы сканирующего устройства

Основанием корпуса послужил алюминиевый конструкционный профиль 20 серии длиной 1,7 м, рис.№ 2:

Рис. № 2. Алюминиевый конструкционный профиль 20 серии.

Применённые основные унифицированные детали представлены на рис.№ 3:

Рис. № 3. Основные унифицированные детали.

Деталировка унифицированных элементов приведена в таблице № 1.

Табл. № 1. Деталировка унифицированных элементов.

п\п

Оборудование

(материалы)

Кол. во

1

Г-соединитель 60х60 (черный), паз 6, отв.6

4

2

Соединитель 20х80, паз 6

2

3

Уголок 20х20L (черный), паз 6

4

4

Заглушка торцевая 20 х 20

6

5

Винт цилиндр. с внутренним шест. М10 х 10

4

6

Сухарь пазовый М5, паз 6

29

7

Гайка-барашек М5

4

8

Узел крепления лазера

4

9

Шайба М5

8

10

Подшипники 624

2

11

Болт М12 х 30

8

12

Болт М9 х 7

21

13

Болт М6 х 30

2

14

Болт М7 х 30

2

15

Гайка М8

2

2.2Электронные компоненты сканирующего устройства

Основным оптическим прибором 3D-сканера «Фаворит» является веб-камера Logitech C270 [3], четыре промышленных лазерных излучателя Symbol Standart CW [4] засвечивают объект в процессе сканирования, рис. № 4:

 

Рис.№ 4. а) веб-камера Logitech C270; б) промышленный лазерный излучатель Symbol Standart CW.

В качестве управляющего микропроцессорного устройства была использована плата Arduino Uno [5], рис. № 5:

Рис.№ 5. Плата Arduino Uno.

Позиционный стол приводится во вращение шаговым двигателем 28BYJ-48 [6], рис. № 6:

Рис.№ 6. Шаговый двигатель 28BYJ-48.

Управляется шаговый двигатель драйвером ULN2003 [7], рис.№ 7:

Рис.№ 7. Драйвер шагового двигателя ULN2003.

Подключение плат Arduino Uno и драйвера шагового двигателя ULN2003 к шаговому двигателю 28BYJ-48 [8] представлено на рис.№ 8:

Рис.№ 8. Монтажная схема устройства.

2.3 Скетч для Arduino и программа для персонального компьютера

На Arduino загружается официальный скетч, приложение №2. В качестве управляющей программы для нашего сканера используется программа Sardauscan [9], под Windows. После запуска программы, для начала сканирования необходимо:

выбрать нужную камеру в окне «Camera» и нажать «ok»;

подключить Arduino Uno, нажав на иконку лотка или лазера, откроется окно обновления, выбрать предложенный USB порт и нажать "ok";

нажать «Turn Table» и проверить работу поворотного стола. В этом же окне можно включить лазеры;

откалибровать камеру, для этого необходимо: перейти на вкладку «Camera» и нажать «Physical Calibration». Нужно найти центр стола, перемещая горизонтальную зеленую линию, если она остается на одном месте и не смещается, значит, центр стола установлен;

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

откалибровать размеры сканера и расположение лазеров;

откалибровать лазерное изображение;

откалибровать матрицу, для этого необходимо: перейти во вкладку «Calibrate», нажать «Correction matrix» и запустить быстрое сканирование;

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

После всех выполненных настроек можно приступать к сканированию.

Финансово-экономическое обоснование проекта

В современном мире 3D-технология широко используется как на производстве, так и частными людьми, которые нуждаются в собственном 3D-сканере. Приобретение готового 3D-сканера в собственное пользование не всегда экономически оправдано, так как его стоимость, отдельных моделей, может достигать миллиона рублей. Нашим решением поставленной проблемы является разработка линии конструкторов для самостоятельной сборки бюджетного 3D-сканера, способного решить многие технические и технологические проблемы. Разработано три комплекта наборов для самостоятельной сборки: комплект №1 – входит подробная инструкция по сборке бюджетного 3D-сканера. Распространяется как на электронных, так и на бумажных носителях, покупатель оплачивает только стоимость носителя. Так достигается эффект «скрытая реклама»; комплект №2 – комплектация, состоящая из комплекта №1 и готовых деталей корпуса, электронные компоненты в набор не входят; комплект №3 – комплектация, состоящая из комплекта №2 и всех электронных компонентов.

Лозунг нашего проекта: «собрать бюджетный 3D-сканер проще, чем табуретку из IKEA». Его легко соберет даже учащийся средней школы, что было доказано в ходе выполнения нашего проекта.

Целевая аудитория проекта

Первичным звеном целевой аудитории, являются учащиеся средних школ и студенты вузов, занимающиеся техническим творчеством. Косвенной целевой аудиторией являются члены семьи учащихся. Социально-демографические характеристики целевой аудитории [10] сведены в таблицу № 2:

Табл. № 2. Социально-демографические характеристики целевой аудитории.

Пол

Женский/мужской

Возраст

От 12 лет

Уровень дохода на члена семьи

От 15 000 рублей

Жизненный цикл семьи

Полные/неполные семьи

Род занятий

Служащие, представители малого бизнеса, учащиеся и студенты

Образование

Без образования, среднее и высшее образование

Поколение

Родившиеся в период с 1960-2007

Психографические характеристики целевой аудитории [10] сведены в таблицу № 3:

Табл. № 3. Психографические характеристики целевой аудитории.

Образ жизни потребителя

Размеренный, сельский, городской

Отношение потребителя к инновациям

Новатор

Отношение к себе

Ощущение себя лидером — способность изменить мир или положение вещей

Лидер потребителя

Известные личности инженеринга

Внутренняя мотивация покупки

Получение новых знаний, навыков, умений, достижение личного достатка

Отношение к местному производителю

Положительное

Жизненная позиция

Активная, положительная, спокойная, утвердительная.

Ценности

Семья, дети, самореализация, стабильное материальное благополучие, положение в обществе

3.2 Анализ конкурентной насыщенности на рынке

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

Табл. № 4. Анализ конкурентной насыщенности рынка.

п/п

Название

3D-сканера

Стоимость

(тыс. руб.)

Время сканирования

(минут)

Точность сканирования

(мм)

Область сканирования

(мм)

1

3D-сканер «Фаворит»

11-250

2

1,0

120 х 120

2

BQ CICLOP

21-990

2

1,0

205 х 205

3

XYZPRINTING

Hand Scanner

24-290

2

1,5

50 х 600

4

ISENSE

39-450

2

1,0

300 x 300

5

SENSE

45-900

3

1,0

200 x 200

6

SHINING 3D EINSCAN-S

58-000

3

0,1

700 х 700

7

МФУ XYZ da Vinci 1.0 Pro

71-850

5

0,25

150 х 150

8

EinScan-SE

84-925

2

0,1

200 х 200

Проведённый анализ конкурентной насыщенности рынка позволил выделить основного конкурента — это BQ CICLOP [11], представленный на рис. № 9:

Рис. № 9. 3D-сканерBQ CICLOP.

3D-сканер BQCICLOP распространяется торговыми сетями AliExpress, производители предлагают покупателю конструктор с необходимой инструкцией для самостоятельной сборки 3D-сканирующего устройства, отличающегося хорошими показателями цена/качество.

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

3.3 Экономический расчёт проекта

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

Стоимость первой комплектации (в бумажном варианте): 25 листов формата А4 + цветная печать на 25 листов = 25 * 1 + 25 * 4 = 25 + 100 = 125 рублей.

Стоимость второй комплектации: цена первого комплекта + себестоимость корпуса и расходных материалов + наценка = 125 + 1955 + наценка 100% = 2080 + 2080 = 4160 рублей.

Стоимость третьей комплектации: цена первого комплекта + себестоимость комплектующих устройства + наценка = 125 + 5500 + наценка 100% = 5625 + 5625 = 11250 рублей.

Данные расчета постоянных расходов сведён в табл. № 5; данные расчёта переменных расходов сведён в табл. № 6:

Табл. № 5. Расчет постоянных расходов. Табл. № 6. Расчет переменных расходов.

п/п

Услуга/материалы

Стоимость

(руб)

 

п/п

Услуга/материалы

Стоимость

(руб)

1

Аренда помещения

8000

1

Материалы и сырье

180

2

Коммунальные услуги

2000

2

Закупочная стоимость товара

3850

3

Зарплата (ставка)

12000

3

Зарплата (сдельная часть)

300

4

Реклама

2000

Итого:

4330

5

Страховые взносы за ИП

3000

6

Страховые взносы за работника

3600

7

НДФЛ

1560

Итого:

32160

Для изготовления конструктора будет достаточно площадь помещения в 20 м2. Была выбрана средняя средняя по региону стоимость аренды за 1 м2 - 400 рублей. Аренда помещения: 20 * 400 = 8000 рублей. Понадобится один работник для изготовления комплектующих и их упаковки. Ставка 400 р/день. Зарплата работнику (ставка) = 400 * 30 = 12000 рублей. Планируемая стоимость рекламы в социальных сетях 2000 рублей в месяц.

Оплата сдельной части труда работников за одну единицу товара: изготовление устройства (печать на 3D-принтере, проверка исправности) - 100 рублей за одно устройство; упаковка конструктора и отправка на почту (или доставка на руки) - 200 рублей за одно устройство. Зарплата (сдельная часть) за единицу товара = 100 + 200 = 300 рублей.

Расчет BEP [12] (точки безубыточности) при продаже третьей комплектации:

Расчёт маржинального дохода (разница между ценой единицы и переменными затратами) произведен по формуле:

(1) где

P- цена (от англ. price),

AVC- переменные затраты на единицу (от англ. Average variable cost);

Расчёт коэффициента маржинального дохода произведён по формуле :

;(2) где

MR - маржинальный доход,

P- цена (от англ. price);

Расчёт BEP - точки безубыточности (от англ. Break - evenpoint) произведен по формуле:

; (3) где

FC (от англ. Fixed cost) - постоянные затраты,

KMR- коэффициент маржинального дохода;

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

Основная часть деталей – унифицированные изделия производства фирмы «СОБЕРИЗАВОД». При изготовлении поворотного стола используется 200 грамм ABS пластика.

Расчёт себестоимости устройства при единичном изготовлении сведен в табл. № 7.

Табл. № 7. Расчёт себестоимости устройства при единичном изготовлении.

№ п/п

Оборудование

(материалы)

Количество

(штук)

Цена

(руб.)

Сумма

(руб.)

Поставщик/источник

1

Arduino Uno

1

260-00

260-00

https://ru.aliexpress.com

2

Веб-камера Logitech C270

1

1799-00

1799-00

https://www.dns-shop.ru

3

Драйвер шагового двигателя ULN2003

1

109-00

109-00

https://ru.aliexpress.com

4

Шаговый двигатель 28BYJ-48

1

120-00

120-00

https://ru.aliexpress.com

5

Промышленный лазерный модуль

4

251-88

1007-52

https://ru.aliexpress.com

6

Пластик ABS для 3D-принтера

200 гр

900-00 за 1кг

180-00

https://www.ozon.ru

7

Алюминиевый профиль

1,7 м

198-00 за 1м

336-06

https://www.soberizavod.ru/

8

Г-соединитель 60х60

4

66-00

264-00

https://www.soberizavod.ru/

9

Соединитель 20х80

2

24-00

48-00

https://www.soberizavod.ru/

10

Уголок 20х20L

4

35-00

140-00

https://www.soberizavod.ru/

11

Заглушка торцевая 20 х 20

6

20-00

120-00

https://www.soberizavod.ru/

12

Винт с внутренним шест. М5 х 8

4

2-00

8-00

https://www.soberizavod.ru/

13

Сухарь пазовый М5

29

22-00

638-00

https://www.soberizavod.ru/

14

Гайка-барашек М5

4

4-00

16-00

https://www.shuruping.ru

15

Гайка М12

4

7-12

28-48

https://www.shuruping.ru

16

Шайба М5

8

1-00

8-00

https://www.obi.ru

17

Подшипники 624

2

35-00

70-00

https://www.obi.ru

18

Болт М12 х 30

8

3-00

24-00

https://www.obi.ru

19

Болт М9 х 7

21

3-00

63-00

https://www.obi.ru

20

Болт М6 х 30

2

3-00

6-00

https://www.obi.ru

21

Болт М7 х 30

2

3-00

6-00

https://www.obi.ru

22

Прочие расходы

251-94

Итого:

5500

Следует отметить, что оптовые закупки позволят снизить себестоимость устройства до 30 процентов. В этом случае закупочная стоимость товара составит: 5500 - (5500 : 100%) * 30%) = 5500 – 1650 = 3850 рублей.

Заключение

В ходе выполнения проекта мы выявили методы и технологии трехмерного сканирования, нами был разработан, изготовлен и испытан действующий образец 3D-сканера «Фаворит». На созданной действующей модели провели демонстрацию использования лазерного дальномера для трёхмерного сканирования исследуемого объекта, провели финансово-экономического обоснование проекта.

Гипотеза:лазерное сканирование позволяет построить 3D-копию исследуемого физического тела в цифровом формате – нашла своё практическое подтверждение.

Задачи проекта - выполнены полностью.

Цель проекта:создание 3D-сканера «Фаворит» – достигнута.

Библиографический список

https://make-3d.ru/articles/chto-takoe-3d-skaner-i-kak-on-rabotaet/

http://can-touch.ru/blog/history-and-types-of-3d-scanning/

https://www.logitech.com/ru-ru/product/hd-webcam-c270

https://www.astrel.su/3d-printer/3d-plastik/kbase_id_7165.htm

http://arduino.ru/Hardware/ArduinoBoardUno

https://3d-diy.ru/wiki/arduino-mechanics/stepper-motor-28BYJ-48/

http://robotchip.ru/obzor-28byj-48-s-drayverom-uln2003/

https://arduinomaster.ru/motor-dvigatel-privod/shagovye-dvigateli-i-motory-arduino/

https://www.thingiverse.com/thing:702470

http://powerbranding.ru/potrebitel/celevaya-auditoriya/

https://3deshnik.ru/blogs/akdzg/3d-skaner-tsiklop-svoimi-rukami

https://bbf.ru/calculators/13/?outlay=1000&outlay_item=5&cost=10&count=1000

Приложение №1. Основные узлы и соединения 3D-сканера «Фаворит»

 

 

 

 

 

 

 

 

 

Приложение №2. Скетчдля Arduino

#include "SerialCommand.h"

#include <AccelStepper.h>

#include "configuration.h"

AccelStepperstepper1(HALFSTEP, motorPin1, motorPin3, motorPin2, motorPin4);

SerialCommandSCmd;

intRotationToSteps(int rotation)

{

return rotation*STEP_BY_MINMOVE;

}

intStepsToRotation(int rot)

{

return rot/STEP_BY_MINMOVE;

}

void Identification()

{

Serial.println("yes");

}

void Hun()

{

Serial.println("Hun?");

}

voidTableCommand()

{

char *arg;

arg = SCmd.next();

if (arg != NULL)

{

if(arg[0]=='R'||arg[0]=='r') // T R

{

char *arg2 = SCmd.next();

intpos=atoi(arg2);

stepper1.move(RotationToSteps(pos));

stepper1.runToPosition();

Serial.print("RELATIVE ROTATION :");

Serial.print(pos);

Serial.print(" => ");

Serial.println(StepsToRotation(stepper1.currentPosition()));

}

else if(arg[0]=='A'||arg[0]=='a') // T A

{

char *arg2 = SCmd.next();

intpos=atoi(arg2);

stepper1.moveTo(RotationToSteps(pos));

stepper1.runToPosition();

Serial.print("ABSOLUTE ROTATION ");

Serial.print(pos);

Serial.print(" => ");

Serial.println(StepsToRotation(stepper1.currentPosition()));

}

else if(arg[0]=='S'||arg[0]=='s') //T S

{

Serial.print("REVOLUTION STEPS ");

Serial.print(" => ");

Serial.println(StepsToRotation(REVOLUTION_STEP));

}

else if(arg[0]=='C' ||arg[0]=='c') //T C

{

stepper1.setCurrentPosition(0);

Serial.print("RESET CUTTENT POSITION ");

Serial.print(" => ");

Serial.println(StepsToRotation(stepper1.currentPosition()));

}

else

{

Serial.print("Unknown Table command :");

Serial.println(arg);

}

}

else {

Serial.print("Position ");

Serial.println(StepsToRotation(stepper1.currentPosition()));

}

}

intgetLaserPin(intlaserIndex)

{

if(laserIndex==0)

return LASER_PIN_1;

else if(laserIndex==1)

return LASER_PIN_2;

else if(laserIndex==2)

return LASER_PIN_3;

else if(laserIndex==3)

return LASER_PIN_4;

else

return (-1);

}

voidLaserCommand()

{

char *arg;

arg = SCmd.next();

if (arg != NULL)

{

intlaserIndex=atoi(arg);

char *arg2 = SCmd.next();

if (arg2 == NULL)

{

Serial.print("LASER_STATE: ");

Serial.print(laserIndex);

int pin =getLaserPin(laserIndex);

Serial.print("(");

Serial.print(pin);

Serial.print(") = ");

if(pin>=0)

Serial.println(digitalRead(pin));

else

Serial.println(-1);

}

else

{

intlaserState = atoi(arg2);

int pin =getLaserPin(laserIndex);

if(pin>=0)

digitalWrite( pin, laserState==1?HIGH:LOW);

Serial.print("SET_LASER: ");

Serial.print(laserIndex);

Serial.print("(");

Serial.print(pin);

Serial.print(") = ");

Serial.println(digitalRead(pin));

}

}

else

{

Serial.print("LASER_COUNT: ");

Serial.println(LASER_COUNT);

}

}

void setup() {

stepper1.setMaxSpeed(500.0);

stepper1.setAcceleration(200.0);

stepper1.setSpeed(400);

stepper1.moveTo(0);

stepper1.runToPosition();

Serial.begin(SERIAL_BAUD);

pinMode(LASER_PIN_1, OUTPUT);

pinMode(LASER_PIN_2, OUTPUT);

pinMode(LASER_PIN_3, OUTPUT);

pinMode(LASER_PIN_4, OUTPUT);

digitalWrite(LASER_PIN_1, LOW);

digitalWrite(LASER_PIN_2, LOW);

digitalWrite(LASER_PIN_3, LOW);

digitalWrite(LASER_PIN_4, LOW);

SCmd.addCommand("sardauscan",Identification);

SCmd.addCommand("T",TableCommand);

SCmd.addCommand("t",TableCommand);

SCmd.addCommand("L",LaserCommand);

SCmd.addCommand("l",LaserCommand);

SCmd.addDefaultHandler(Hun);

Serial.println(FIRMWARE_VERSION);

Serial.flush();

}

void loop() {

SCmd.readSerial(); // We don't do much, just process serial commands

Serial.flush();

}

Просмотров работы: 92