|
Как сделать отдельные друг от друга прием и передачу данных |
|
|
|
Oct 20 2015, 13:12
|
Местный
  
Группа: Свой
Сообщений: 227
Регистрация: 1-10-15
Из: Москва
Пользователь №: 88 647

|
Отцы, пришла пора мне самому писать синхронизацию... И вот непонятность нависла на ум мой. Смотрите, у нас, допустим, есть обычная 8-DPSK модуляция, смотрим рисунок, который я приложил, модулятор работает. Это маппер, именно он мне и нужен.
Теперь мне охота просто отослать эти данные совершенно в другую программу. Как бы Вы передавали потоки данных между двумя программами? Допустим, с этим вопросом получится разобраться, а вот дальше. у меня бесконечно по циклу отправляются данные. Если сообщение "Привет, Мир, я сообщение, я не говорю, что Ты новичок в С#, я сейчас просто передаюсь из программы Windows Forms C# в другую программу Windows Forms C#", то на приемнике мы либо увидим: "/*ЖДУЖДУЖДУЖДУЖДУЖДУЖДУ*/.....Привет, Мир, я сообщение, я не говорю, что Ты новичок в С#, я сейчас просто передаюсь из программы Windows Forms C# в другую программу Windows Forms C#", либо "Ты новичок в С#, я сейчас просто передаюсь из программы Windows Forms C# в другую программу Windows Forms C#".
Надо же как-то засинхронизироваться, чтобы принимать сообщения друг от друга. Как это сделать?
Кстати, если у вас есть, чего подсказать еще по моему вопросу, чего я сейчас не вижу, буду очень признателен.
Сообщение отредактировал lennen - Oct 20 2015, 13:46
|
|
|
|
|
Oct 20 2015, 14:07
|
Местный
  
Группа: Свой
Сообщений: 227
Регистрация: 1-10-15
Из: Москва
Пользователь №: 88 647

|
К счастью, я являюсь счастливым обладателем этой книги, покупал ее, конечно, еще дороже, так как покупал у перекупщиков, а не напрямую, поэтому спрашиваю прямо - какая страница?;D
И можно небольшой комментарий, что мне предстоит изучить, на пальцах?
|
|
|
|
|
Oct 20 2015, 14:35
|
Местный
  
Группа: Свой
Сообщений: 227
Регистрация: 1-10-15
Из: Москва
Пользователь №: 88 647

|
Да мне-то просто надо сначала засинхронизировать систему, именно в том смысле, что я хочу банально начать получать биты и знать, что на приеме не будут кракозябры из-за того, что я начал прием не с 0 информационного бита, а с 3-го. До меня не доходит, как это вообще в простейшем случае сварганить. А потому уже внедрять более эффективные алгоритмы, зачем мне этот Скляр пока вообще?:D Ну что поделаешь, если всегда я использовал накопление данных в текстовом файле, а только потом относительно в оффлайне разбирался, где начало, где что.
Сообщение отредактировал lennen - Oct 20 2015, 14:39
|
|
|
|
|
Oct 20 2015, 14:41
|
Знающий
   
Группа: Свой
Сообщений: 790
Регистрация: 6-02-14
Из: Омск
Пользователь №: 80 379

|
Скляр это справочник, без серьезных знаний читать его бесполезно. Ищите учебники, которые используются в буржуйских универах. Вот например в штате Юта по специальности Wireless Communication изучают https://www.utdallas.edu/~torlak/wireless/h...390SACS2011.pdfучебник товарища Голдсмита Textbook: Wireless Communications by Andrea Goldsmith, Cambridge Univ. Press
|
|
|
|
|
Oct 20 2015, 15:21
|
Знающий
   
Группа: Свой
Сообщений: 565
Регистрация: 22-02-13
Пользователь №: 75 748

|
Цитата(lennen @ Oct 20 2015, 17:12)  Кстати, если у вас есть, чего подсказать еще по моему вопросу, чего я сейчас не вижу, буду очень признателен. Кадровая синхронизация. По преамбуле, вводимой в начало сообщения. Обычно с хорошими корреляционными характеристиками. Сначала нужно засинхронизироваться, а затем периодически по этой преамбуле делать проверку. Цитата(lennen @ Oct 20 2015, 18:49)  И долго его изучать-то? Успею к 50 годам? Долго. Год-два. Еще минимум столько же, чтобы применить на практике для моделирования. И еще столько же, чтобы сделать реальный продукт.
Сообщение отредактировал Grizzzly - Oct 20 2015, 15:22
|
|
|
|
|
Oct 20 2015, 15:26
|
Знающий
   
Группа: Свой
Сообщений: 790
Регистрация: 6-02-14
Из: Омск
Пользователь №: 80 379

|
Цитата(lennen @ Oct 20 2015, 17:49)  И долго его изучать-то? Успею к 50 годам? Можно ускорить, если пойти на сайт Mathworks и поискать модели или поискать лекции у нас http://www.intuit.ru/studies/courses/1004/...ure/5236?page=4И поиграться с готовыми моделями, а также почитать лекции. Еще вариант это поискать видео лекции по теме, с упражнениями и задачами. Обычно индусы выкладывают. Интерактивное обучение дает некоторое ускорение, но возни с Matlab будет много
|
|
|
|
|
Oct 20 2015, 15:31
|
Знающий
   
Группа: Свой
Сообщений: 565
Регистрация: 22-02-13
Пользователь №: 75 748

|
Цитата(agregat @ Oct 20 2015, 19:26)  Можно ускорить, если пойти на сайт Mathworks Поддерживаю. Еще модели модемов, которые petrov делал и выкладывал.
Сообщение отредактировал Grizzzly - Oct 20 2015, 15:33
|
|
|
|
|
Oct 20 2015, 18:17
|
Местный
  
Группа: Свой
Сообщений: 459
Регистрация: 15-07-04
Из: g.Penza
Пользователь №: 326

|
lennenЛитературы по синхронизации OFDM просто море ! Много раз уже обсуждалось на форуме: вот, вот и вот.
|
|
|
|
|
Oct 21 2015, 07:31
|
Знающий
   
Группа: Свой
Сообщений: 565
Регистрация: 22-02-13
Пользователь №: 75 748

|
Цитата(lennen @ Oct 21 2015, 09:59)  Давайте начнем тогда с ФМ-сигнала. Все-таки вот это я не понимаю. В эфир идут I и Q составляющая, они запаздывают по фазе. А как выделить отдельно I и Q компоненту? И, допустим, я их выделил. А как теперь найти то место в принимаемом сигнале, где надо начать обработку сигнала, где начало сообщения? Как вы это делаете, можете в двух словах объяснить? electronix.ru/forum/lofiversion/index.php/t102130.html Алгоритм программной демодуляции сигналов QPSK Поиск по форуму про программный демодулятор.
|
|
|
|
|
Oct 21 2015, 10:20
|
Местный
  
Группа: Свой
Сообщений: 339
Регистрация: 5-05-11
Пользователь №: 64 797

|
Цитата(lennen @ Oct 21 2015, 12:53) Да мне-то просто надо сначала засинхронизировать систему, именно в том смысле, что я хочу банально начать получать биты и знать, что на приеме не будут кракозябры из-за того, что я начал прием не с 0 информационного бита, а с 3-го. Простейший случай: 1. Размер слова - 8 бит. 2. Размер паузы между словами - больше 8 бит со значением "1". 3. Стартовый бит каждого слова - "0". Итого, ловим паузу длительностью "больше 8 бит", затем нолик, далее идет информативная часть сообщения. Поверх этого можно накидывать много всего, усложняя схему, но принцип уже понятен. Есть некий однозначный шаблон сообщения, на соответствие которому проверяется поток входящих данных. Если шаблон совпал - вот данные, если нет - ждем пока совпадет.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|