1. МОП для моно-колеса
Тлисов Али
ali.tlisov@gmail.com
25 апреля 2017 г.
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 1 / 14
2. О моноколесе
1 Это легче и дешевле Segway R
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 2 / 14
3. О моноколесе
1 Это легче и дешевле Segway R
2 Это практичнее и удобнее
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 2 / 14
4. О моноколесе
1 Это легче и дешевле Segway R
2 Это практичнее и удобнее
3 Это сложнее освоить
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 2 / 14
5. О моноколесе
1 Это легче и дешевле Segway R
2 Это практичнее и удобнее
3 Это сложнее освоить
4 Это сложнее разрабатывать
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 2 / 14
6. О Uniwheel
Международная команда
Лондон:
Конструкторы, технологи
Электроника
Производство
Маркетинг
Москва:
Конструкторы (расчеты,
прототипирование)
Электроника
Программное обеспечение
Программисты:
Системный программист (1 шт)
Прикладной программист (1 шт)
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 3 / 14
7. Состояние проекта до MATLAB
Код на Си, который писался пол-года
Арифметика с фиксированной точкой на
libfixmath[1]/libfixmatrix[2]
Полтора месяца до публичной презентации продукта
Проблемы в работе изделия
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 4 / 14
8. Какие были проблемы
Сложность поиска проблемных мест
Сложность внесения изменений
Сложность тестирования, моделирования
Переполнения, потеря точности
Невозможность представления маленьких чисел
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 5 / 14
9. Какие решения предоставил MATLAB
Работа на более
высоком уровне
Изменения
занимают
минимальное время
Наблюдаемость
каждого сигнала
Любые форматы
чисел с
фиксированной
точкой[3]
Генерация
производительного
кода[4]
Очень много кода на С для матричных
высилений с фиксированной точкой
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 6 / 14
10. Какие новые возможности предоставил MATLAB
Моделирование работы изделия
Идентификация параметров модели по экспериментальным
данным[5]
Обширная библиотека функций для ЦОС[6]
Удобство работы с многоскоростными алгоритмами
Индикация проблемных мест, в которых происходит переполнение
или потеря точности
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 7 / 14
11. Моделирование. Модельно - ориентированная
разработка
Детальное изучение
поведения
Численная оценка
качественных
показателей
Сравнительный
анализ разных
реализаций (Model
Reference)[7]
Моделирования
ситуаций, которые
сложно
воспроизвести
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 8 / 14
13. Арифметика с фиксированной точкой
Автоматизированная проверка
модели для предупреждения
любых проблем связанных с
целочисленной арифметикой
Сравнение работы
целочисленного алгоритма и
алгоритма с плавающей
точкой
Оценка влияния конвертации в
фикс точку на точность
работы и другие показатели
Автоматизированное
определение форматов чисел
по результатам моделирования
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 10 / 14
14. Многоскоростные алгоритмы
Борьба с фазовым
запаздыванием,
задержками и повышение
частоты алгоритма
Борьба за ресурсы памяти
и понижение частоты
алгоритма дискретного
преобразования фурье
Всего 3 частоты 8 кГц, 1
кГц, 250 Гц. Если не
считать 14 кГц частоту
управления мотором,
которая реализована в Си.
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 11 / 14
15. Генерация кода
Я тоже думал что код будет медленным и неэффективным. Это не
так.
Это тем более не так для больших и сложных проектов, где
затруднительно оптимизировать каждый кусок кода
Это тем паче не так для проекта который надо сделать в сжатые
сроки
Это очень удобное решение для проекта который хочется легко
модифицировать в будущем, сократив стоимость поддержки и
сроки внесения модификаций
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 12 / 14
16. ЦОС
Батарейки включены.
SDFT (sliding discrete fourier transform)[8] на базе фильтра с
комплексными коэффициентами, работающий с векторными
данными в фиксированной точке? Велосипед изобретать не
нужно!
Огромное количество других компонент.
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 13 / 14
17. Список литературы
Cross Platform Fixed Point Maths Library. URL:
https://code.google.com/archive/p/libfixmath/.
Aimonen Petteri. C library for fixed point matrix, quaternion and vector calculations. URL:
https://github.com/PetteriAimonen/libfixmatrix.
Fixed-Point Designer - MATLAB & Simulink. URL:
https://www.mathworks.com/products/fixed-point-designer.html.
Embedded Coder - MATLAB & Simulink. URL:
https://www.mathworks.com/products/embedded-coder.html.
System Identification Toolbox Documentation. URL:
https://www.mathworks.com/help/ident/index.html.
DSP System Toolbox Documentation. URL:
https://www.mathworks.com/help/dsp/index.html.
Model Referencing - MATLAB & Simulink. URL:
https://www.mathworks.com/help/simulink/model-reference.html.
Jacobsen Eric, Lyons Richard. The sliding DFT.
Т. 20, № 2.
С. 74–80. URL: http://ieeexplore.ieee.org/abstract/document/1184347/.
Тлисов Али ali.tlisov@gmail.com МОП для моно-колеса 25 апреля 2017 г. 14 / 14