Страница 2 из 3
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 09:10:28
lucifern
otest писал(а):lucifern
Нарисуйте временную диаграмму и всем станет понятно.

а как мне нарисовать диаграмму данных? Не,ну в принципе, заморочуь нарисую
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 10:02:49
lucifern
Диаграмма работы во вложении
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 10:06:57
Soir
lucifern писал(а):Диаграмма работы во вложении
Ну а я уже прошивку изменил. Давайте сверять работу с диаграммой.
Добавил дополнительный выход, проверяйте его функциональность. Сделал 3-е состояние (Z) для выходов. Если на RA1 1 на активном выходе 1, на остальных Z, если RA1 0 то на всех выходах Z.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 10:18:03
lucifern
Вот сигнал данных с порта RA1. Кстати,это данные CLC, так что их проще будет пропустить шлюзом через контроллер. C данными CS у меня ничего не получилось ,так как там устанавливается лог 1 и 0 только( упоминал в предыдущем описании работы его как пример, особо на это не стоит обращать внимание)
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 10:21:48
lucifern
Soir писал(а):lucifern писал(а):Диаграмма работы во вложении
Ну а я уже прошивку изменил. Давайте сверять работу с диаграммой.
Добавил дополнительный выход, проверяйте его функциональность. Сделал 3-е состояние (Z) для выходов. Если на RA1 1 на активном выходе 1, на остальных Z, если RA1 0 то на всех выходах Z.
Нет,малость не так. Когда на RA1 0,то на активном выходе тоже должно быть 0 - это данные! То есть данные CLC 101010101, поэтому их надо пропускать так как они на входе,а на других не активных выходах Z. Когда произойдет переключение на другой порт, то на другом порту, данные с RA1 должны в точности повторяться, на на неактивных портах Z
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 11:09:33
Soir
lucifern писал(а):Нет,малость не так. Когда на RA1 0,то на активном выходе тоже должно быть 0 - это данные!
А теперь?
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 11:40:12
lucifern
А теперь?
Теперь всё замечательно. Осталось проверить полноценную прошивку по часам.
Благодарю Вас за такую громадную работу

Я перед Вами в долгу!
Как все тесты проведу в полном объеме дам знать.
Есть еще одна задумка насчет пропускания всех данных ( 6 портов данных)через отдельный контроллер на каждое из 10 устройств, а не одного порта, но это уже другой подход.

Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 12:08:36
Soir
lucifern писал(а):...То есть данные CLC 101010101, поэтому их надо пропускать так как они на входе...
Кстати, а какая скорость передачи данных? МК вносит некоторую задержку и я с этим не заморачивался, но если критично...
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 12:53:11
lucifern
Если скорость данных будет мала, то я вам после всех тестов отпишусь )
Сигнал у меня CLC- синхронизация. Не думаю , что ему нужна большая скорость, хотя....
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 12:58:28
Soir
lucifern писал(а):...Не думаю , что ему нужна большая скорость, хотя....
Думаю лучше сразу сделать по максимуму, потому как это потянет за собой изменения в схему.
---
Внес изменения и в схему, и в прошивку. Проверьте правильность работы еще раз, мог что-то зацепить.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 19:01:47
lucifern
Сразу заметно,что схемку малость подкорректировали. Порт данных сделали на осcцилятор. Умно! Все вроде в моделе работает хорошо, кроме порта RB6, на нем оставили при выключении значение лог "0",а не Z, нужно поставить Z. Завтра залью в железо. Только видно по осциллографу,что присутствует задержка, то есть сигнал на выходе отстает на несколько микросекунд от входного. С чем это может быть связанно? Самое главное, в основной прошивке исправьте

А то проверка может затянуться на часы
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 19:28:20
Soir
lucifern писал(а):...кроме порта RB6, на нем оставили при выключении значение лог "0",а не Z, нужно поставить Z.
Недоглядел, исправил.
lucifern писал(а): Только видно по осциллографу,что присутствует задержка, то есть сигнал на выходе отстает на несколько микросекунд от входного. С чем это может быть связанно?
Задержка неизбежна. На обработку события МК тратит какое-то время, тут ничего не поделаешь. Посмотрю может это время удастся немного уменьшить, но немного. Если критично - надо увеличивать частоту МК, но для кварца нужны два вывода. Второй путь - возврат к внешней логике. Но Вы протестируйте для начала.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 19:35:56
lucifern
Хорошо. Завтра всё опробую.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Ср авг 21, 2013 19:36:36
Soir
Забыл рабочую прошивку, добавил в предыдущее сообщение.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Чт авг 22, 2013 10:30:28
lucifern
В общем итог таков:
Контроллер и программа работает так как написана.
Не работает всё это вместе взятое как должно в железе

При измерениях входного и выходного сигнала я понял, что алгоритм работы совсем другой. Вы сделали манипуляционный выход, а не прямой шлюз. При подключении ко входу сигнал CLC с внешнего устройства садится на лог. "1" и получается, что сигнал изначально искажен. На выходе соответственно влияние лог. "1" по входу "модулированной"" сигналом CLC воспринимается высоким уровнем и выставляется в лог. "1", то есть сигнал не проходит.Следовательно на лицо манипуляция. Нужно сделать шлюз, чтобы со входа сигнал подключался к выходу напрямую, без участия логических уровней контроллера. А то получается что если по входу какая то помеха будет присутствовать, то на выходе будет "1". Проще говоря надо смодулировать обычное реле, которое бы переключала один вход на 10 выходов напрямую. Вот как то так.Это реализуемо на чипе контроллера или придется все делать на механических элементах, управляемыми контроллером?
Сигнал на выходе внешнего устройства
Сигнал на входе контроллера
Сигнал на выходе контроллера
Может попробовать хотя бы убрать лог."1" по входу контроллера, вдруг что-нибудь получится?

Или сделать все как нужно.
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Чт авг 22, 2013 10:40:35
lucifern
Если данные с одного устройства невозможно передать через другое напрямую, то моя очередная идея превращается в утопию

Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Чт авг 22, 2013 11:39:47
Garin
моя очередная идея превращается в утопию
Мне кажется вы не одиноки , здесь 90% фантазируют.
Это- ж надо такое придумать, чтобы использовать МК в качестве сквозного канала.
Это пока первая в мире такая разработка ? Подобный пример есть еще где?
Соир, я бесконечно удивляюсь вашему терпению , к нам новичкам, но думаю даже вы не ожидали финальной цели этой идеи!
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Чт авг 22, 2013 11:57:13
lucifern
Аналогов нет,покрайней мере на гражданском рынке и с использованием сразу 10 и больше устройств. Как будет все готово, сюда же выложу полностью функциональное устройство
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Пт авг 23, 2013 16:38:10
lucifern
Soir, где же Вы?

Работа стоит...
Re: Нужна программа на таймер переключения нагрузки.
Добавлено: Вт авг 27, 2013 18:37:44
Soir
Извините, отдыхал. Завтра начну во все вникать.