Подскажите пожалуйста. Если самозанятый разрабатывает собственное ПО и самостоятельно продаёт лицензии на него, в том числе и юридическим лицам, как ему быть с НДС?
Я ввожу дополнительную проверку ещё и потому, что в Modbus минимальный элемент имеет размер в 2 байта и запросто может оказаться так, что в результате ошибки мастер выдаст нечетное количество байт.
Вы окончание пакета определяете по совпадению контрольной суммы. Это не совсем корректно, на моей практике случалось, что у больших пакетов был такой набор данных что контрольная сумма совпадала в теле пакета, в результате поступали данные поступали некорректные.
По хорошему, необходимо анализировать служебную информацию, количество регистров, вычислять сколько должно быть байт в пакете, сличать что бы количество принятых байт было не меньше чем ожидается и только потом рассчитывать контрольную сумму.
По большому счёту без разницы кто как трактует. Самое главное показать ошибку. Мастер от этого не сломается, зато человек сразу поймёт в каком месте проблема.
Это надо, потому что это описано в спецификации, по которой производители программного обеспечения по всему миру пишут свой софт. Если вы ей не следуете, то не можете называть то что вы делаете modbus протоколом.
Как разработчик OPC сервера, использующего в своей работе Modbus в том числе, я часто сталкиваюсь с подобными поделками. Мне жалко конечного пользователя, который обычно остаётся с таким прибором один на один, стараемся вместе выкрутиться, приходится вносить изменения в собственное ПО, но к сожалению это не всегда получается. И всё только из за того что кто то решил
Вы неправильно понимаете.
Да, если адрес slave не совпадает с тем что запрашивает master надо молчать.
Но, если slave понимает что пакет адресуется ему и при этом он не может его обработать, он должен ответить коротким сообщением, в котором передаётся код ошибки.
Почему вы не формируете ответ с кодом ошибки, если мастер неверно запросил данные?
//если неправильный адрес и количество
if((AdresBit+KolvoBit)>(ModBusMaxOutBit) || KolvoBit>ModBusMaxOutBitTX || KolvoBit==0)
{
//неправильный адрес и количество
CRCmodbus=0xFFFF; //установить начальное значение CRC
return;//повторный запрос не требуется
}
Ведь по спецификации Modbus должен быть ответ в таком случае, а ваш slave молчит как партизан. Поди догадайся, то ли сетевой номер не совпадает, то ли с командой что то не то.
Потому что пихать в один документ все знания мира не очень целесообразно
Я неправильно выразился. Раз это национальный стандарт, то и ссылки должны начинаться со слова ГОСТ. Ведь в ГОСТ 23670-79 это так. А чем ГОСТ Р 58940-2020 не ГОСТ? Это моё личное мнение, раз уж так всё громко названо, то должно быть и сделано соответственно. А по факту, халтура, даже переписать поленились.
A.3 Academic Membership
A) Joining fee
Each Academic Member is due to pay a joining fee of EURO 500 .-
B) Annual subscription
Each Academic Member is due to pay an annual subscription fee of EURO 1 000
В первый раз надо всё таки 1500 или я неправильно понимаю?
Это очень глубокая мысль и тут главное начать с себя. Когда ваши разработки окупятся, не забудьте их продавать забесплатно.
Я и не говорил что бесплатно, повторюсь, я готов платить. Даже и 500 евро, если после этого буду иметь возможность читать эти документы, но 1500(1000) всё таки перебор.
Я сужу по спецификации OPC, да в первое время доступ получают только Full Member, но потом дают доступ всем остальным.
Вообще какой смыл быть Full member? За это есть смысл платить только если вы хотите протолкнуть в стандарт удобные для вас вещи. Крупные компании могут себе такое позволить и они будут тянуть за собой остальных, а мелкий бизнес подстраивается под это.
А с себя я уже давно начал. За те смешные деньги что продаётся мой продукт, пользователь получает неограниченную возможность обновления и неограниченную по времени поддержку.
Вообще, практически все производители электрических счётчиков, на своих сайтах, заявляют, что у них это реализовано.
Но при попытке заказать прибор с таким протоколом, наталкиваешься на глухую стену. Менеджеры почему то сразу теряют интерес, перестают отвечать на письма и когда начинаешь проявлять настойчивость сводится к тому что таких приборов на складе нет, будут только под заказ и через неопределённое время.
Возможно конечно, если заказ делает крупная организация всё по другому происходит, но купить несколько приборов тяжело.
Если речь идет про спецификацию СПОДЭС, то она доступна на сайте ПАО Россети.
Вот почему, документ, как вы писали в начале статьи, «Национальный стандарт Российской Федерации ГОСТ Р 58940-2020», ссылается на сторонние документы? Разве он не должен быть самостоятельным? Я понимаю, когда в подобном документе написано «Основан на стандарте DLMS/COSEM» и т.д., но там сплошь и рядом
Дополнительная информация приведена в DLMS UA 1000-1 Ed. 12.0 COSEM Interface
Classes and OBIS Object Identification System, Twelfth Edition.
.
Я наверно чего то не понимаю и отстал от жизни.
Так цена вопроса 1000 евро, месячная зарплата программиста…
Не совсем так, первый раз 1500, а потом по 1000 ежегодно.
Я согласен заплатить, но не такие суммы. Для представителя нанобизнеса, которым я являюсь, сумма приличная и отдать больше ежемесячного заработка… Причём стандарт разработан давно, и разработка давно уже окупилась. А за что платить 1000 евро в год, если по сути, существенных изменений не вносится.
Занялся как то изучением этой спецификации. Может я как то не так искал, но на просторах рунета, в то время, нашел только документ CTO_ 34.01.5.1-006-2017. Который по сути ничего и не даёт, и постоянно ссылается на разноцветные книги. В свободном доступе есть только Excerpt версии, в которых дана только поверхностная информация.
Я вот никак не пойму, какой смысл скрывать этот протокол? Столько лет развивается уже, давно пора открывать. OPC UA и тот открыт.
Кому интересно, исходники по DLMS спецификации можно найти тут.
1. Как вы разворачиваете Python, базу, Apache? Неплохо бы эту тему тоже развернуть. В первой части написано, но там всё руками, а как это всё из инсталятора делается?
2. Вы проверяете наличие открытого порта для базы, если он открыт то установка не произойдёт. Т.е. если в системе уже установлен PostgreSQL, его надо сносить?
3. Исходя из пункта 2, обновление тоже не предусмотрено, всё сносим и устанавливаем с нуля?
4. Очень интересен механизм подписи. Он автоматом подписывает все исполняемые файлы и динамические библиотеки, входящие в состав дистрибутива, или только сам дистрибутив?
Тогда мы возвращаемся к вопросу о том, что в системе останется мусор после удаления папки с программой. Т.к. папка с логами и настройками будет находиться в другом месте, да и запись об этой папке где то должна храниться. А пользователь, вряд ли вручную будет систему подчищать.
Поэтому и получается, что проще инсталятор сделать, и в нём при удалении прописать очистку.
Я когда начал распространять своё приложение, так и сделал сначала. Был обычный exe файл упакованный в zip архив. После скачивания, предполагалось что пользователь распакует его в удобное для него место. После запуска приложение создавало в той же директории папку с логами, файл с настройками и т.д. Всё создавалось в той же папке из соображений, что если пользователь захочет удалить программу, то он просто удаляет папку.
Но, по мере того как всё больше людей стало пользоваться моей программой столкнулся с проблемой, каждый третий норовит распаковать в папке Program Files. А в современных версиях Windows, по умолчанию, там писать нельзя. Поэтому как то само собой и перешёл на инсталятор, а все настройки храню в ProgramData.
Непонятно, в чём опыт? Вы подали заявку? Какие документы подали, о какие подводные камни споткнулись? Был ли отказ? Если был, удалось оспорить?
Что получилось в итоге? Какой результат?
Интересно было бы узнать, заявка подавалась от имени физ. лица или от имени юр. лица.
По шагам бы расписали, где споткнулись и т.д.
Как вообще доказать что писали код?
К примеру случился конфликт с работодателем, пришли вы в суд, а он заявляет, не было такого, Вася Пупкин макулатуру разносил. Да числился программистом и зарплату программиста получал, так такое по т.к. не запрещено.
Голословно тоже не заявишь, что код ваш.
Поддерживаю.
Я всем Яндекс приложениям на своём телефоне доступ к микрофону закрыл. Заметил, стоит о чём нибудь поговорить рядом с телефоном, так на эту тему начинается контекстная реклама показываться.
Я не специалист и о VMWare Sphere только слышал, но очень интересно, её можно запустить на нескольких разных машинах и ресурсы этих машин могут быть объединены? Каким образом получилось сложить ресурсы двух машин?
Ещё непонятно, в статье говорится о 64 Гб оперативной памяти, а на изображении 128, и каким образом получается 30 ГГц процессор?
Я ввожу дополнительную проверку ещё и потому, что в Modbus минимальный элемент имеет размер в 2 байта и запросто может оказаться так, что в результате ошибки мастер выдаст нечетное количество байт.
Просто я дополнительно ещё и с количеством регистров на всякий случай сверяю.
Вы окончание пакета определяете по совпадению контрольной суммы. Это не совсем корректно, на моей практике случалось, что у больших пакетов был такой набор данных что контрольная сумма совпадала в теле пакета, в результате поступали данные поступали некорректные.
По хорошему, необходимо анализировать служебную информацию, количество регистров, вычислять сколько должно быть байт в пакете, сличать что бы количество принятых байт было не меньше чем ожидается и только потом рассчитывать контрольную сумму.
Как разработчик OPC сервера, использующего в своей работе Modbus в том числе, я часто сталкиваюсь с подобными поделками. Мне жалко конечного пользователя, который обычно остаётся с таким прибором один на один, стараемся вместе выкрутиться, приходится вносить изменения в собственное ПО, но к сожалению это не всегда получается. И всё только из за того что кто то решил
Да, если адрес slave не совпадает с тем что запрашивает master надо молчать.
Но, если slave понимает что пакет адресуется ему и при этом он не может его обработать, он должен ответить коротким сообщением, в котором передаётся код ошибки.
Ведь по спецификации Modbus должен быть ответ в таком случае, а ваш slave молчит как партизан. Поди догадайся, то ли сетевой номер не совпадает, то ли с командой что то не то.
Я неправильно выразился. Раз это национальный стандарт, то и ссылки должны начинаться со слова ГОСТ. Ведь в ГОСТ 23670-79 это так. А чем ГОСТ Р 58940-2020 не ГОСТ? Это моё личное мнение, раз уж так всё громко названо, то должно быть и сделано соответственно. А по факту, халтура, даже переписать поленились.
Charter of Fees version 4 (2019)
В первый раз надо всё таки 1500 или я неправильно понимаю?
Я и не говорил что бесплатно, повторюсь, я готов платить. Даже и 500 евро, если после этого буду иметь возможность читать эти документы, но 1500(1000) всё таки перебор.
Я сужу по спецификации OPC, да в первое время доступ получают только Full Member, но потом дают доступ всем остальным.
Вообще какой смыл быть Full member? За это есть смысл платить только если вы хотите протолкнуть в стандарт удобные для вас вещи. Крупные компании могут себе такое позволить и они будут тянуть за собой остальных, а мелкий бизнес подстраивается под это.
А с себя я уже давно начал. За те смешные деньги что продаётся мой продукт, пользователь получает неограниченную возможность обновления и неограниченную по времени поддержку.
Но при попытке заказать прибор с таким протоколом, наталкиваешься на глухую стену. Менеджеры почему то сразу теряют интерес, перестают отвечать на письма и когда начинаешь проявлять настойчивость сводится к тому что таких приборов на складе нет, будут только под заказ и через неопределённое время.
Возможно конечно, если заказ делает крупная организация всё по другому происходит, но купить несколько приборов тяжело.
Вот почему, документ, как вы писали в начале статьи, «Национальный стандарт Российской Федерации ГОСТ Р 58940-2020», ссылается на сторонние документы? Разве он не должен быть самостоятельным? Я понимаю, когда в подобном документе написано «Основан на стандарте DLMS/COSEM» и т.д., но там сплошь и рядом .
Я наверно чего то не понимаю и отстал от жизни.
Не совсем так, первый раз 1500, а потом по 1000 ежегодно.
Я согласен заплатить, но не такие суммы. Для представителя нанобизнеса, которым я являюсь, сумма приличная и отдать больше ежемесячного заработка… Причём стандарт разработан давно, и разработка давно уже окупилась. А за что платить 1000 евро в год, если по сути, существенных изменений не вносится.
Я вот никак не пойму, какой смысл скрывать этот протокол? Столько лет развивается уже, давно пора открывать. OPC UA и тот открыт.
Кому интересно, исходники по DLMS спецификации можно найти тут.
1. Как вы разворачиваете Python, базу, Apache? Неплохо бы эту тему тоже развернуть. В первой части написано, но там всё руками, а как это всё из инсталятора делается?
2. Вы проверяете наличие открытого порта для базы, если он открыт то установка не произойдёт. Т.е. если в системе уже установлен PostgreSQL, его надо сносить?
3. Исходя из пункта 2, обновление тоже не предусмотрено, всё сносим и устанавливаем с нуля?
4. Очень интересен механизм подписи. Он автоматом подписывает все исполняемые файлы и динамические библиотеки, входящие в состав дистрибутива, или только сам дистрибутив?
Поэтому и получается, что проще инсталятор сделать, и в нём при удалении прописать очистку.
Но, по мере того как всё больше людей стало пользоваться моей программой столкнулся с проблемой, каждый третий норовит распаковать в папке Program Files. А в современных версиях Windows, по умолчанию, там писать нельзя. Поэтому как то само собой и перешёл на инсталятор, а все настройки храню в ProgramData.
Что получилось в итоге? Какой результат?
Интересно было бы узнать, заявка подавалась от имени физ. лица или от имени юр. лица.
По шагам бы расписали, где споткнулись и т.д.
К примеру случился конфликт с работодателем, пришли вы в суд, а он заявляет, не было такого, Вася Пупкин макулатуру разносил. Да числился программистом и зарплату программиста получал, так такое по т.к. не запрещено.
Голословно тоже не заявишь, что код ваш.
Я всем Яндекс приложениям на своём телефоне доступ к микрофону закрыл. Заметил, стоит о чём нибудь поговорить рядом с телефоном, так на эту тему начинается контекстная реклама показываться.
Ещё непонятно, в статье говорится о 64 Гб оперативной памяти, а на изображении 128, и каким образом получается 30 ГГц процессор?