Сделал расчёт тяги винтов, расчёт крутящего момента, минимальную стабилизацию в контроллере полёта ) Летает, корявенько пока, но я прекрасно понимаю что надо сделать, чтобы летал нормально, тем и занимаюсь в данное время ) Для отладки контроллеров стабилизации накидал себе сейчас скриптик “Осциллограф”. Поддерживает любое количество “каналов”, у каналов настраивается скейл по обоим осям, настраивается частота семплинга у осциллографа. В общем довольно удобная для дебага штуковина получилась )
Скачал Quartus II и прочитал введение в Verilog. После получаса безуспешных ковыряний в IDE я всё же смог сам написать, собрать и прошить первый код на Verilog ^____^ Пищит динамиком на плате:
module Test(clk, out);
input clk;
output out;
reg out;
reg[15:0] cnt;
parameter period = 7000;
always@(posedge clk)
begin
cnt<=cnt+1;
if(cnt == period)
begin
cnt<=0;
out<=~out;
end
end
endmodule
https://github.com/L-proger/ELFUtils
https://github.com/L-proger/ELFExplorer – GUI приложение, лагучий набросок.
В основном для самообучения, для раскуривания дебаггинга и т.п. но ещё одно интересное для меня применение – напишу вскоре тулзу для вывода подробной инфы о памяти ELF бинарника. Я довольно часто программирую под микроконтроллеры и как многим известно там есть обычно достаточно большие проблемы с объёмом памяти – как FLASH так и оперативной, потому часто приходится считать байты и стараться сделать бинарник как можно меньше по размеру.
Вот и накидал эту библиотеку. На самом деле всё можно было бы сделать гораздо проще! Использоваться стандартную тулзу тулчейна readelf и, скажем, регулярками разбирать её вывод и получать финальную информацию о символах в бинарнике, но это слишком просто ) А так я разобрался в DWARF формате что меня весьма радует.
Пример вывода консольной версии ниже. Консоль сейчас для простого дебага, я вскоре сделаю красивый удобный гуй для этого всего ) А, да, ещё DLL умеет парсить пока минимально lds скрипты линкера и правильно использовать информацию о секциях памяти для последующего анализа её использования (можно посмотреть сколько % памяти каждого из банков занято и т.п.).
Стандартная процедура регистрации простая: ставим WP8 SDK, запускаем Windows Phone Developer Registration тулзу, подключаем телефон с разлоченным экраном и включенным интернетом по USB к компьютеру, тулза регистрации детектит телефон, логинимся в девелоперский аккаунт и телефон разлочивается! Всё просто! А вот у меня не сработало.
И на то было несколько причин:
1. Судя по всему учитывается установленный регион в телефоне. Для тестов Cortana я сменил язык телефона и регион на USA! После долгих попыток зарегать телефон понял, что регион важен.
2. Москва на данный момент находится в GMT+3 засовом поясе, однако в телефоне у меня Москве присвоен GMT+4 пояс. Я вручную выставлял время и пояс на +03. Так делать не нужно! Необходимо выставить +4 часовой пояс в данном случае и пусть время будет на 1 час больше на время регистрации.
3. После перехода на новую мобилу Windows автоматически подтащил из облака все настройки телефона, включая и его имя! Важно, что если прошлый телефон не был разрегистрирован и имел такое же имя, то зарегистрировать новый не выйдет. Пофиксил удалением регистрации предыдущего телефона через сайт https://dev.windowsphone.com/en-us/Account/Devices
Как только выставил верный регион и корявое время но совпадающее с мнением телефона, разрегистрировал старый телефон – всё сразу зарегистрировалось.
Объяснение параметров функции Pacejka 94 года (есть более старые и новые варианты функции, количество параметров в них различается) http://www.edy.es/dev/docs/pacejka-94-parameters-explained-a-comprehensive-guide/
Пилю потихоньку дальше проект. Как уже писал – упор на качество симуляции. Симулировать же хочется как можно больше всего ) Сейчас у меня пилится электронная система автомобиля, система зажигания, двигатель и т.п. Электронная система включает в себя шины питания (шина аксессуаров и шина зажигания), источники питания, устройства – потребители. Можно добавлять/удалять аккумулятор, менять его напряжение и ёмкость, от выдаваемого тока зависит мощность и скорость стартера, работа других электроприборов ) Загон конечно, но мне нравится.
Основная проблема заключается не в написании всего этого, а в сборе данных! Ни как не могу найти нормальный годный список, например, стартеров с _подробными_ даташитами! Или хотя бы графики токоскоростных характеристик! У производителей инфа есть, конечно же, но ни кто не выкладывает её. Путём жесточайшего гугления нашёл графики всего для нескольких стартеров, вот пример для модели4216.3708-02
Итак, движок мой уже 2.5 года на паузе и там похоже останется. Я бы мог его допиливать, опыта необходимого за последнее время сильно прибавилось, как и понимания что делать, но это процесс долгий и по сути своей бессмысленный уже – необходимые мне знания получены во время разработки того, что есть + ушёл я уже дальше и без движка. До коммерческого вида мне в одиночку его доводить несколько лет, чем я заниматься не хочу, да и толка от него не будет – есть куча готовых годных движков.
Изучаю Unity3D. Движок во многом коряв, нахожу постоянно кучи экзотических багов, но тем не менее можно не корячиться со своей поделкой, а сразу приступить к разработке игры.
На Unity3D начал пилить некий игровой проект, упор на качество симуляции, больше информации будет со временем )