Страница 2 из 3 Первая 123 Последняя
Показано с 21 по 40 из 42

Тема: Калибровка линейности ЦАП и АЦП

  1. #1 Показать/скрыть первое сообщение.
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Калибровка линейности ЦАП и АЦП

    Предлагаю ветку для обсуждения вопросов повышения линейности преобразователей с помощью дополнительной калибровки.
    В первую очередь данный вопрос актуален конечно же для параллельных преобразователей, но и ДС приборы также имеют потенциал для улучшения линейности. И если для первых корректировать нужно DNL и INL, то для вторых достаточно только скорректировать INL.
    Для затравки приведу несколько примеров:

    Многие параллельные ЦАП имеют специальные выводы для подключения внешних подстроечных потенциометров, однако они, как правило исправляют нелинейность только на середине шкалы (исключение только PCM58/PCM1701). В то же время, интегральные конвертеры, как правило, обладают достаточно высокой стабильностью для получения точности много выше их исходной разрядности. Пример использования конверторов невысокой разрядности для построения ЦАП высокого разрешения я предложил еще в ветке: https://forum.vegalab.ru/showthread.php?t=67739
    Однако из-за сложности предложенного метода калибровки такая схемотехника не нашла популярности у любителей.
    Для ЦАП с двоичной матрицей преобразования (типа TDA1541) я придумал более простой способ калибровки:

    Аналоговая подстройка линейности параллельных ЦАП с двоично-весовой матрицей

    Нажмите на изображение для увеличения. 

Название:	R2R_DAC_analog_trim.png 
Просмотров:	196 
Размер:	35.2 Кб 
ID:	412903
    [свернуть]

    Такой метод требует по одному потенциометру на каждый бит, по аналогии с подстройкой в PCM58. Эту же схемотехнику можно применить и для PCM58. Например: если нужно подстроить не только старшие 4 бита, но и еще несколько младших.
    Подстройка двоичный весов - процедура достаточно простая (исправляет одновременно DNL и INL) и позволяет вывести линейность ЦАП вплоть до ограничения по тепловой стабильности: Инструкция калибровки.pdf

    Однако, многие ЦАПы имеют сегментированную структуру старших разрядов с кол-вом сегментов обычно 8..16. Такое кол-во потенциометров уже не рационально.
    Подстройку линейности в таком случае можно выполнять либо с помощью дополнительного калибровочного ЦАП. Либо, как предложил Сергей Агеев - суммируя погрешности в шум ноизшейпера. При этом, процедура калибровки для параллельного конвертера не всегда ограничивается сшивкой сегментов по DNL погрешности. А иногда разбивается на две процедуры: исправление DNL, и последующее исправление INL.

    С ДС конвертерами ситуация иная: у них практически отсутствуют DNL погрешности, и калибровать нужно только INL.
    Для примера можно рассмотреть INL ДС АЦП:

    Графики INL для AD7760

    Нажмите на изображение для увеличения. 

Название:	AD7760_INL.png 
Просмотров:	117 
Размер:	118.1 Кб 
ID:	412902
    [свернуть]

    Суть калибровки в таком случае сводится к искривлению ХП (хар-ки преобразования) конвертера таким образом, чтобы скомпенсировать кривую INL. Если нелинейность гладкая, то ее можно исправлять линейной интерполяцией по нескольким точкам. Но в случае более кривой INL арифметика усложняется.
    И в любом случае калибровка INL получается сложнее, т.к. в данной процедуре нет очевидных разрывов ф-ии, которые видны на осциллограмме. Исправлять INL можно либо анализируя спектр, либо автоматизировав процедуру с помощью прецизионного измерительного АЦП.

    В заключение отмечу, что вопросы калибровки интересны не только в любительской сфере, но и в коммерческой, т.к. калибровка позволяют на любом, самом дешманском чипе сделать ультралинейный девайс.

    Тематическая литература:
    Вложения Вложения
    Последний раз редактировалось dortonyan; 03.01.2022 в 22:15.

  2. #21
    Завсегдатай Аватар для SergioT
    Регистрация
    02.12.2004
    Адрес
    Сан-Марино
    Сообщений
    1,458

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    dortonyan, Cпасибо!! Отпишу что получилось.
    Для 58х было бы очень кстати.
    Мелочи не имеют решающего значения, мелочи решают все

  3. #22
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Нашел у себя в закромах готовые сигналы для PCM58. Трианглы 22Гц -90дБ с 12 по 18 разряды (18-ый - старший). Но для более точной калибровки лучше использовать синусы амплитудой порядка -60дБ частотой 300..500Гц. И на синусах калибровка удобнее, т.к. на спектре НЧ помехи не мешают. Синусы сделаю как-нить позже.
    Вложения Вложения

  4. #23
    Завсегдатай Аватар для SergioT
    Регистрация
    02.12.2004
    Адрес
    Сан-Марино
    Сообщений
    1,458

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    dortonyan, Спасибо! Рождественская неделя будет интересной.
    Мелочи не имеют решающего значения, мелочи решают все

  5. #24
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Посмотрел, что для осциллограмм сигнал -90дБ слабоват. Калибровать можно только с дизерингом.
    Поэтому для калибровки двоичной матрицы нагенерил еще сигналов на старших 12 разрядов (MSB - старший, MSB-1 - следующий, и т.д.): трианглы 22Гц -76дБ и -61дБ, а так же синусы 480Гц -61дБ.
    Вложения Вложения

  6. #25
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Подниму ветку, а то на форуме со скуки помереть можно.
    В этой и не только ветке упоминался способ цифровой калибровки ЦАП в цифре с помощью шейпинга. Постараюсь описать доступно для чайников-энтузиастов как это делается.

    Для начала рассмотрим шейпер:
    Нажмите на изображение для увеличения. 

Название:	NoseShape_01.png 
Просмотров:	81 
Размер:	21.7 Кб 
ID:	437993
    По сути это цифровая модель усилителя с ООС, включенного по схеме повторителя. Схема из сумматоров S1 и S2 - эквивалент входного диф-каскада усилителя.
    В данном примере квантайзер Q получает 16 бит сигнал из 24 битного "отрезанием" младших 8 бит. При этом в выходном сигнале получается погрешность Error (знаковая!), равная разности исходного сигнала и квантованного.
    Для того чтобы скомпенсировать эту погрешность, ее значение сохраняется в регистре задержки T, а затем суммируется к следующему семплу.
    Таким образом получаем усилитель с ООС, имеющей задержку на 1 семпл. Данная ООС исправляет погрешность квантования с точностью, определяемой разрядностью входной шины данных (в данном примере 24 бита).

    А далее возникает вопрос: если такая схема с ООС исправляет нелинейность квантования, то почему бы таким же способом не исправить нелинейность ЦАП? Например диф. нелинейности параллельного ЦАП.
    Т.к. алгоритм полностью цифровой, то шейпер не может видеть аналоговые погрешности ЦАПа. Поэтому таблицу таких погрешностей нужно формировать вручную в виде таблицы коэф-тов, в которой каждому входному коду данных соответствует поправочный коэф-т.
    Далее этот коэф-т плюсуется в точку суммирования ООС (S2):
    Нажмите на изображение для увеличения. 

Название:	NoseShape_02.png 
Просмотров:	56 
Размер:	30.1 Кб 
ID:	437994
    Для 16 бит ЦАП кол-во состояний кода получается 2^16 = 65536, и кол-во коэф-тов 65535. Однако на практике нет необходимости строить таблицу для всех состояний.
    Т.к. наибольшие погрешности создают старшие разряды, то можно таблицу составить например только для 4..5 старших бит данных. Получается соот-но 15 и 31 коэф-тов.
    Далее кол-во коэф-тов можно сократить еще больше, если учитывать структуру матрицы параллельного ЦАП.
    Например у TDA1541 и PCM58 матрица полностью двоичная. Поэтому для калибровки например старших 8 бит достаточно подобрать 8 коэф-тов (по одному на каждый токовый сегмент). А далее эти коэффициенты суммируются в соответствии с кодом.
    Например если входной код старших 8 бит 0x43, то корректирующий коэф-т равен сумме трех коэффициентов, соответствующих битам 0, 1 и 6 из 8-ми старших бит.
    Откалибровать таким способом можно не только диф. нелинейности, но и глитч. Однако для упрощения процедуры подбора коэф-тов лучше использовать на выходе ЦАП аналоговый деглитчер.

    P.S.
    Еще момент касательно шейпера.
    Т.к. к исходным данным суммируется ошибка ООС, то для исключения переполнения необходимо выполнять предварительную небольшую аттенюацию. Самый просто способ - вычесть из сигнала его копию, сдвинутую вправо на N бит, например на 8 (зависит от выходной разрядности).
    Нажмите на изображение для увеличения. 

Название:	NoseShape_03.png 
Просмотров:	48 
Размер:	26.3 Кб 
ID:	437995
    Последний раз редактировалось dortonyan; 22.06.2023 в 12:03.

  7. #26
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,989

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    А почему не подключить DAC Error decoder прямо на вход для исключения задержки в 1 сэмпл при коррекции? То есть на вход DAC error decoder*а подать выход Att, а выход этого декодера подать в S1. Может потребоваться доп. задержка всего сигнала на 1 сэмпл, но на фоне цифровых фильтров это не так страшно.
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  8. #27
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    А почему не подключить DAC Error decoder прямо на вход для исключения задержки в 1 сэмпл при коррекции?
    Наверное можно, но тогда нужно еще как минимум подмешивать шум. И это будет уже не шейпинг, а просто коррекция шумом, по аналогии со сглаживанием ступеней квантования дизеренгом.
    Если учесть, что шум должен быть размахом больше максимальной погрешности ЦАП, то SNR может получиться неважный, при сходных аппаратных ресурсах.
    Последний раз редактировалось dortonyan; 22.06.2023 в 14:00.

  9. #28
    Завсегдатай Аватар для Turbo_man
    Регистрация
    06.04.2010
    Адрес
    Moscow
    Сообщений
    5,559

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от dortonyan Посмотреть сообщение
    Например у TDA1541 и PCM58 матрица полностью двоичная.
    А как тут дела обстоят у PCM1702P? Есть данные?

    ---------- Сообщение добавлено 14:53 ---------- Предыдущее сообщение было 14:46 ----------

    Т.е. перед выводом данных на каждую микросхему ЦАП должна стоять эта схема с конкретной для этой микросхемы таблицей поправок. Мдя... для меня будет многовато, наверно (8). Но зато глитч в цифре можно будет попробовать убрать?

    ---------- Сообщение добавлено 14:56 ---------- Предыдущее сообщение было 14:53 ----------

    Цитата Сообщение от dortonyan Посмотреть сообщение
    Откалибровать таким способом можно не только диф. нелинейности, но и глитч.
    Я про это. А то в аналоге не понятно как делать, если конвейер использовать.

  10. #29
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Turbo_man Посмотреть сообщение
    А как тут дела обстоят у PCM1702P? Есть данные?
    Ну это же колинеар, там сложнее получается. Фактически на каждую полуволну сигнала свой ЦАП. И скорее всего с сегментированными старшими разрядами.
    Т.е. там нужно для каждой полуволны свой набор коэф-тов. А потом еще "сшивать" полуволны по амплитуде аттенюацией одной из полуволн (добавлять аттенюацию для только положительных или только отрицательных значений входного кода).
    Чтобы выяснить сколько сегментов - нужно сгенерить тестовые сигналы с постоянным смещением и проанализировать по ним осциллограммы в спектраплюсе. Выше для SergioT я делал сигналы, но что-то у него все заглохло.

    Цитата Сообщение от Turbo_man Посмотреть сообщение
    Но зато глитч в цифре можно будет попробовать убрать?
    Можно, но там принцип формирования коэф-том немного другой. Глитч проявляется только при смене кода. Поэтому для мультиплексирования коэф-тов отслеживать нужно не только значение кода, но и его смену.

    Цитата Сообщение от Turbo_man Посмотреть сообщение
    Я про это. А то в аналоге не понятно как делать, если конвейер использовать.
    В принципе в конвейере ЦАПы можно калибровать общим набором коэф-тов (как для одного ЦАП). Для калибровки в таком случае нужно делать отладочный мод с синхронной работой всех ЦАП в параллель. А после калибровки уже вводить смещения по времени преобразования.

  11. #30
    Завсегдатай Аватар для Turbo_man
    Регистрация
    06.04.2010
    Адрес
    Moscow
    Сообщений
    5,559

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от dortonyan Посмотреть сообщение
    в конвейере ЦАПы можно калибровать общим набором коэф-тов (как для одного ЦАП).
    Это обнадёживает, если и вправду прокатит. За счёт усреднения во времени?
    Цитата Сообщение от dortonyan Посмотреть сообщение
    нужно делать отладочный мод с синхронной работой всех ЦАП в параллель.
    Это давно сделано в некоторых версиях, как один из возможных вариантов использования, чтобы каждый сам мог убедиться в преимуществах конвейера.

  12. #31
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Turbo_man Посмотреть сообщение
    Это обнадёживает, если и вправду прокатит. За счёт усреднения во времени?
    Да, усредняться будет одинаково, что в конвейере, что просто в параллель.
    Главное определить структуру матрицы - кол-во сегментов. А дальше уже дело техники. Для калибровки надо только АЦП более-менее приличный, встройка наверное не прокатит.
    Если надо, калибровочные сигналы я сделаю. Можно будет в ветке обсудить осциллограммы, попробовать угадать по ним структуру матрицы.

  13. #32
    Завсегдатай Аватар для Turbo_man
    Регистрация
    06.04.2010
    Адрес
    Moscow
    Сообщений
    5,559

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от dortonyan Посмотреть сообщение
    Для калибровки надо только АЦП более-менее приличный, встройка наверное не прокатит.
    В принципе есть Джулия pci-e и ASUS STX тоже pci-e. Что предпочесть? У меня маловато опыта по проведению очень точных измерений, но с внешней помощью справлюсь, я думаю.

  14. #33
    Старый знакомый Аватар для dee-jan
    Регистрация
    09.07.2009
    Адрес
    BLR
    Возраст
    42
    Сообщений
    922

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Да обоих хватит за глаза.
    Сергей.

  15. #34
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Да, звуковухи обе годные, есть только нюанс.
    При одновременном подключении к звуковой карте и житагу образуется петля по земле, которая мешает смотреть малые сигналы. Поэтому желателен АЦП с симметричным входом.
    Но есть и выход проще: использовать пару несимметричных входов стере-АЦП как один симметричный. А вычитание включать в спектраплюсе, для осциллограмм там есть вычитание каналов. Для спектра такого режима почему-то не сделали, но на спектральном анализе можно обойтись и так.
    Или можно каждый раз для проверки сигнала отсоединять разъем житаг, но это конечно неудобно.

  16. #35
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,989

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от dortonyan Посмотреть сообщение
    это будет уже не шейпинг, а просто коррекция шумом, по аналогии со сглаживанием ступеней квантования дизеренгом
    Не-не, я именно про табличную коррекцию. Шейпинг через S2 и delay оставляем как у вас на картинках.
    Но за ответ спасибо, я всё понял
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  17. #36
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Не-не, я именно про табличную коррекцию. Шейпинг через S2 и delay оставляем как у вас на картинках.
    Я понял, но так как вы описали, без подмешивания шума, калибровка работать не будет. ЦАП сам себя откалибровать не может. Сигнал коррекции нелинейности можно подмешивать либо в ООС шейпера, либо в шум.
    Иначе только добавлять дополнительный калибровочный ЦАП небольшой разрядности. Что, кстати тоже вариант, т.к. 8..10 бит конверторы стоят недорого.
    Соб-но сама процедура калибровки схемотехнически несложная и достаточно дешевая. Основная проблема - сделать удобный интерфейс калибровки. Например, через приложение с компа посредством USB транспорта.
    А то можно и вовсе автоматизировать с помощью отдельного калибратора на прецизионного АЦП, типа LTC2484 (или даже россыпным АЦП на прецизионных компараторах и составном ЦАПе). А коэф-ты сохранять в отдельную флешь, или в мелкий МК, или во внутреннюю флешь в плисине.
    Но такой калибратор рискует получиться сложнее самого ЦАПа. )

  18. #37
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,989

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от dortonyan Посмотреть сообщение
    Я понял, но так как вы описали, без подмешивания шума, калибровка работать не будет. ЦАП сам себя откалибровать не может.
    Почему? 24-битный сигнал с шейпера продолжает поступать, ОС работает точно также, просто нелинейная штука (табличный корректор) включена в другую часть цепи.
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  19. #38
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Почему? 24-битный сигнал с шейпера продолжает поступать, ОС работает точно также, просто нелинейная штука (табличный корректор) включена в другую часть цепи.
    Вот именно, коррекция линейности получается включена до шейпера (вне цепи ООС), который в таком случае будет исправлять только нелинейности квантования. Это то же самое, что использовать табличный корректор без шейпера.
    Так бы можно было и нелинейность квантования корректировать без задержки, но это уже не будет шейпинг. При подмешивании шума получится дизеринг.

  20. #39
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,989

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Хм, видимо я чего-то не понимаю...
    - Шейпер даже вообще без корректора всё равно остаётся шейпером. На входе 24 бита, какой-то сигнал сигнал ошибки мы выделяем, подаём на вход с задержкой (можно сделать фильтр сложнее, вместо простой задержки на 1 семпл, но здесь речь не об этом).
    - 16-битный ЦАП с 24-битным входом не будет нормально работать без шейпера и/или подмешивания шума. Неважно, будет ли там где-то корректор. Если во входном сигнале шум будет выше -96дБ (или сколько там точно), то работать будет, т. к. это по сути дизер и есть.
    - А если шейпер и корректор работают независимо, то КМК всё ОК, независимо от входного сигнала.

    ЗЫ: Кстати, если взять PCM1704, то корректор можно использовать вообще без шейпера.
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  21. #40
    Завсегдатай
    Автор темы
    Аватар для dortonyan
    Регистрация
    03.06.2009
    Адрес
    BLR
    Возраст
    38
    Сообщений
    3,183

    По умолчанию Re: Калибровка линейности ЦАП и АЦП

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Шейпер даже вообще без корректора всё равно остаётся шейпером.
    Остается, но в таком случае шейпер будет исправлять только нелинейность квантователя.

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    А если шейпер и корректор работают независимо, то КМК всё ОК, независимо от входного сигнала.
    Так просто цифровая коррекция (без шейпера) неработоспособна. Точнее такой коррекцией можно править только INL (с точностью до DNL нелинейностей). Т.е. если по DNL линейность хорошая, то нет проблем. В ДШ на DAC8580/8581 так и предлагают калибровать, просто цифровой таблицей. Благодаря тому, что в данных ЦАП DNL гарантированно не больше 0,5LSB.
    Но, при наличии нелинейности DNL (а это основная проблема в параллельных ЦАП) так править не получится.

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Кстати, если взять PCM1704, то корректор можно использовать вообще без шейпера.
    Опять же, DNL таблицей коэф-тов без шейпера или дополнительного калибровочного ЦАП скомпенсировать нельзя.
    Рассмотрим ступеньку ХП ЦАП с диф. нелинейностью в минус. Тогда с помощью добавления коэф-та можно эту нелинейность скомпенсировать:
    Нажмите на изображение для увеличения. 

Название:	изображение_2023-06-24_185522217.png 
Просмотров:	25 
Размер:	10.5 Кб 
ID:	438122
    А что делать если имеем диф. нелинейность в плюс?
    Нажмите на изображение для увеличения. 

Название:	изображение_2023-06-24_185634874.png 
Просмотров:	20 
Размер:	4.1 Кб 
ID:	438123
    Вычитание любой величины приведет у переключению сегмента.

Страница 2 из 3 Первая 123 Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •