Страница 261 из 779 ПерваяПервая ... 161211251259260261262263271311361761 ... ПоследняяПоследняя
Показано с 2,601 по 2,610 из 7787

Тема: Экспресс вопрос (ответ)

  1. #2601
    Пользователь
    Регистрация
    21.01.2011
    Адрес
    еБург
    Сообщений
    890

    По умолчанию

    Цитата Сообщение от xroi Посмотреть сообщение
    Юрий, не подтвердите мои доводы?
    я не Юрий, но кое-что понимаю.....

    1) выход TO-INT ограничен всё же 32 битами, в подтверждение попробуйте перевести из INT в FLOAT и обратно 4294967040
    а потом сделайте к нему fADD 768, и посмотрите....

    2) вещественное число - это мантисса и экспонента, в сумме они занимают 32 бита, из них 24 бита мантисса и 8 бит экспонента
    тот пример который вы привели
    Цитата Сообщение от xroi Посмотреть сообщение
    и все, далее никак
    это вы упёрлис в округление младших бит...
    начинающий профессионал

  2. #2602
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,693

    По умолчанию

    что-то не пахнет там 32-мя разрядами, если смотреть на калькулятор

  3. #2603

    По умолчанию

    Цитата Сообщение от xroi Посмотреть сообщение
    Друзья, поигравшись с калькулятором и блоком TO_INT пришел к выводу, что в свободном доступе 31 разряд.
    Т.е. при вводе в блок число более 268435455 оно становится 268435456 и все, далее никак.
    Вложение 26482
    Поэтому всем кто использует функцию округления нужно будет предусмотреть защиту.

    Юрий, не подтвердите мои доводы?
    что-то совсем запутал )) 268435455 - это 27 выставленных битов.
    т.е. при подаче на вход (float - да?) 268435456(7,8 и больше) на выходе to_int видим всегда 268435456 ?

    PS: а почему собственно блок называется INT (int - 2байта -32767 ... +32767), ведь по факту это же DINT ?

  4. #2604

    По умолчанию

    RA, да все так. И да, получается DINT.

    AI!, это я обращался к техподдержке Юрию (разработчикам).

    Вы лучше подскажите, как мне FLOAT перевести в целочисленное без потери.
    Нужно округление для больших чисел.
    first of all samoletas, babas will be soon...

  5. #2605
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,693

    По умолчанию

    целая часть для float ограничена 28 битами похоже.

    Интересно узнать, а зачем вам такие большие флоаты с переводом в INT ?

  6. #2606

    По умолчанию

    Цитата Сообщение от xroi Посмотреть сообщение
    RA, да все так. И да, получается DINT.

    AI!, это я обращался к техподдержке Юрию (разработчикам).

    Вы лучше подскажите, как мне FLOAT перевести в целочисленное без потери.
    Нужно округление для больших чисел.
    float - он такой, если по простому - у него %-ая точность,

    т.е. например : float различает 0,0000001 и 0,0000002, но при этом же 99 999 999 и 100 000 000 и 100 000 001 - в формате float будут 99 999 999, а следующим значением уже будет 100 000 032 и тд.

    цифири и их порядки абстрактные - суть только старался передать

  7. #2607

    По умолчанию Ротация

    По ротации тэнов.
    У меня сложилось такое впечатление, что меня не поняли, поэтому прикладываю скрин проекта. В нем вроде все понятно, но я постараюсь его описать.
    На вход AI4 приходит значение с датчика температуры. ПИД уже выдаёт значение необходимой мощности, которое блоками гистерезиса разбивается на три группы, которые собственно и управляют работой тэнов (Q6, Q7, Q8). И мне собственно надо чтобы в процессе работы (зависит от наработки) эти тэны сменяли друг друга, тем самым обеспечивая равномерный износ.
    проект.jpg

  8. #2608

    По умолчанию

    Цитата Сообщение от xroi Посмотреть сообщение
    Друзья, поигравшись с калькулятором и блоком TO_INT пришел к выводу, что в свободном доступе 31 разряд.
    Т.е. при вводе в блок число более 268435455 оно становится 268435456 и все, далее никак.
    Вложение 26482
    Поэтому всем кто использует функцию округления нужно будет предусмотреть защиту.

    Юрий, не подтвердите мои доводы?
    Вы затронули интересный вопрос, я надеюсь в будущем это отразится в программе OL, возможно в симуляторе будет выведено окно предупреждения когда результат выходит за допустимые пределы. Говорить о максимальном числе не совсем уместно, т.к в реальном проекте сложно будет просчитать результат умножения. Но для себя я провел следующий эксперимент, вывел на экран ПР200 два числа одно float с максимальным кол-вом разрядов которое допустимо в менеджере экранов, второе int, задал максимально возможное число float 9999999, оно корректно преобразовалось. Для полноты картины порекомендую сайт http://www.h-schmidt.net/FloatConverter/IEEE754.html.
    С уважением, Ревака Юрий.
    Инженер группы технической поддержки компании "ОВЕН"
    e-mail: yu.revaka@owen.ru

    Шаблон описания ошибки ПР или OL http://ftp-ow.owen.ru/softupdate/OWE...s/Shablon.docx
    Видео уроки по ПР200 и OWEN Logic http://edu.owen.ru/series/pr200_rev/
    Другие видеоролики по тематике ПР https://www.youtube.com/channel/UCj4...H5H3d_t6iDlQOQ

  9. #2609

    По умолчанию

    Цитата Сообщение от Grog Посмотреть сообщение
    По ротации тэнов.
    У меня сложилось такое впечатление, что меня не поняли, поэтому прикладываю скрин проекта. В нем вроде все понятно, но я постараюсь его описать.
    На вход AI4 приходит значение с датчика температуры. ПИД уже выдаёт значение необходимой мощности, которое блоками гистерезиса разбивается на три группы, которые собственно и управляют работой тэнов (Q6, Q7, Q8). И мне собственно надо чтобы в процессе работы (зависит от наработки) эти тэны сменяли друг друга, тем самым обеспечивая равномерный износ.
    проект.jpg
    А где у Вас считается наработка по тенам, необходимо добавить наработку по тенам и далее в зависимости от наработки сделать присвоение 1-2-3 по времени работы и затем в первую очередь включать в работу блок с номером 3 вторым 2 и последним 1, в первом приближении как-то так.
    С уважением, Ревака Юрий.
    Инженер группы технической поддержки компании "ОВЕН"
    e-mail: yu.revaka@owen.ru

    Шаблон описания ошибки ПР или OL http://ftp-ow.owen.ru/softupdate/OWE...s/Shablon.docx
    Видео уроки по ПР200 и OWEN Logic http://edu.owen.ru/series/pr200_rev/
    Другие видеоролики по тематике ПР https://www.youtube.com/channel/UCj4...H5H3d_t6iDlQOQ

  10. #2610

    По умолчанию

    Цитата Сообщение от Ревака Юрий Посмотреть сообщение
    А где у Вас считается наработка по тенам, необходимо добавить наработку по тенам и далее в зависимости от наработки сделать присвоение 1-2-3 по времени работы и затем в первую очередь включать в работу блок с номером 3 вторым 2 и последним 1, в первом приближении как-то так.
    Так вот о чем и речь, что у меня его нет (не сделан), а хотел это все реализовать одним макросом. Но к сожалению такого не нашлось.

Страница 261 из 779 ПерваяПервая ... 161211251259260261262263271311361761 ... ПоследняяПоследняя

Похожие темы

  1. CODESYS V3.5. Вопросы и ответы
    от ООО "БЛС инжинеринг" в разделе ПЛК (среда CODESYS V3.5)
    Ответов: 7138
    Последнее сообщение: Сегодня, 13:05
  2. ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)
    от Serge_UA в разделе ПЛК (среда CoDeSys V2.3)
    Ответов: 10494
    Последнее сообщение: 14.05.2024, 14:50
  3. вопрос-ответ , или а поговорить????
    от Павел Братковский в разделе Трёп (Курилка)
    Ответов: 10
    Последнее сообщение: 24.01.2018, 11:05
  4. Преобразовать ответ
    от IIeroniux в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 05.10.2015, 17:45

Ваши права

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