Work without a technical assignment

Prologue

While creating this article, I wanted to share my experience, listen to your comments. It is possible that some of you, just like me, have been embroiled in adventures to integrate "hand-scribbled" solutions. It is possible that my "fun" adventure will prevent someone from getting into such crazy situations. And just work, earn money, make the world more enjoyable and interesting.
Ривьера парк, создание системы "Умный дом" 

What I expected: having considerable experience in programming controllers, I thought that I could invest in a project several ready-made and debugged algorithms. Naturally, I was going to adapt them to the needs of a particular Customer.
What happened: I invested a lot of time working on this team. But in the end, my experience was not in demand.
Summary:
1. You should not enter the team of integrators as a contractor programmer if they already have their own programmer and your work can be quickly transferred to him. Even if they assure you that he is incredibly busy on other projects;
2.    You should not start work without a completed Agreement. Advance payment without a contract and haste of the customer should not be arguments for making a decision;
3.    It would be nice to read reviews about the company BEFORE STARTING WORKS;
4.    You should not work for a team of people who can assign you a task one by one - you will not have time to complete it. It is highly desirable that ONE person be appointed who would distribute tasks to all other team members.

Автоматизация в условиях covid19 
There was a second wave of COVID19.

Episode 1. Acquaintance

The acquaintance with the head of the company that hired me began long before the start of work. We talked for about a year, corresponded, tried to find common sides of interaction. Home Systems uses OWEN equipment to implement smart home projects, and I also use it often. As a result, the head of Home Systems approached me with a proposal to work together with very hot deadlines. It was necessary to hand over the automated control system of the apartment before the new year and a little more than a month remained for all the work. I had great doubts about the reality of such deadlines, but for that hungry covid period, work was very difficult and I agreed.
My doubts were confirmed by the general construction unavailability of the object. Installation work was in full swing. Wires hung from the ceiling like vines in the jungle. The automation cabinet was not ready either. Taking part in debugging the cabinet, he alternately supplied power to the connected light groups. In response, loud bangs were heard somewhere above the ceiling and the lights were completely extinguished.
 Монтаж шкафа автоматизации

Episode 2. Working conditions

I think many people would agree that a table and a chair are required to work, at least. When this is not available and it is not possible to bring it, the workplace looks something like this:
Условия работы инженера АСУ ТП, умный дом

Условия работы инженера АСУ ТП, умный дом 
 
Of particular note is the lavatory, which did not have a door. There was no water either. You know what happens to a toilet in a smart home if it is used as intended by several people, for several months and without water. The conditions of such work make it possible to develop record breath holding capabilities.

Условия работы в умном доме без воды 

Episode 3. Planning

At the beginning of the work, the guys from Home Systems pretended to agree with me. That I / O tables are very much needed. The project was "inconsistent" and had a number of inconsistencies. The I / O table grew gradually, changes were made to each version. Version # 24 became the crown of creation and brought together information from various sources.

Таблица ввода-вывода в АСУ ТП

I was asked to create and track schedules. The graphs were constantly shifting. They looked like this:

План-график работ по созданию системы автоматизации

План-график работ по созданию системы "умный дом" 
 
After January ended, there was no point in making schedules. The deadlines "died out" finally and everyone had to adjust to the current circumstances.
The technical task became the main problem. Until the end of my work in this project, I did not have it. Of course, the main task was to create the program code. The accompanying work was invented by the guys in the course of work, incrementing the task more and more.
There was also a KNX programmer in the team, we had previously been trained at the Embedded Systems office on the Logic Machine. He turned out to be very quick-witted - he left work earlier than me and with less losses, since he understood the whole futility of cooperation with this company.

Episode 4. Work without technical task

Description of algorithms
The employers initially demanded that I provide the algorithms for turning on the lighting groups and climate control in a graphical form for approval. But without a technical task, it was unrealistic to complete it. A way out was found in the creation of logic circuits in the CFC language, which made it possible to somehow fulfill their requirements.
Описание алгоритмов при создании системы АСУ ТП 
There were about ten such schemes, and this is only in terms of lighting. We haven't reached the climate yet. Honestly, I don't understand how the owners will use this and whether the designers intended it. In my opinion, it turned out to be very difficult.

Structural diagrams
Структурная схема при создании системы АСУ ТП 
I made up structural diagrams in order to somehow understand what we are trying to implement.
The architecture of the system was never discussed, the work of the system architect was not in doubt. I made and implemented decisions as they were intended.
There was a serious flaw in the system architecture - a "bottleneck" was formed in the form of a UMC server, which united two ecosystems KNX and MODBUS. The temperature values ​​in the room were taken from the KNX light pushbutton switches, and the set values ​​(setpoints) from the EKINEX wall panels. Relay and dimmable control was on the side of the OWEN PLC210, there is Modbus TCP. UMC does not have increased reliability, since it does not support a real-time system and must serve as an element of a home visualization system. Here is what the technical support answered regarding the embedded operating system:
Техническая поддержка Iridium Mobile 

UMC + ПЛК210 Овен 
In mid-February, the guys also burned this UMC by supplying two equal + 24VDC potentials from different switching power supplies to the power input. This event turned out to be a turning point in our cooperation, as it seriously raised the degree in relations and added work to everyone. I was no longer sure that the labor costs would be compensated. I began to regret having contacted this team.

Episode 5. Issuance of technical specifications. The final

My persistent requests to give me a written technical task caused a protest. “We're not going to write algorithms for you,” they said. “We caved in to your requirement to make an I / O table, that table only wasted out time,” they said. Then they thought about it and ... they gave it out.

Here it is:
Особенности выдачи технического задания 
The guys from Home Systems informed me that I already have the terms of reference.
I checked my mail and found a document from the project in A3 format. I had already worked with this document and did not suspect that the technical task would be added to it later.
They asked me to open this document and find what I was looking for.
To be honest, I did not find the terms of reference either from the first or the second attempt. Not even with the third. I saw it only when its author connected to me via remote access and showed where it is. At the same time he told me that I cannot read the documentation. I've seen a lot in over 20 years of experience in automation, but this is the first time I've encountered such a dismissive attitude.
Probably, I'm behind the times, since I'm used to receiving atechnical task in a separate document, at least in the same Word.
I realized that I had enough and left the work without payment.
Через месяц мне вернули мой ПЛК210 Овен, который я им давал на то время, пока их контроллер находился на сервисном обслуживании. Вернули с выломанным портом microUBS.
Варвары и ПЛК210 Овен

In monetary terms, my loss was about 50,000 rubles for work + the cost of the controller.
This work can be called successful only in terms of acquiring life experience, which is valuable to anyone, whatever one may say.

#smarthouse, #features, #technical, #assignment, #climate, #lighting

Russian version
Array
(
    [ID] => 445
    [IBLOCK_ID] => 1
    [NAME] => Work without a technical assignment
    [IBLOCK_SECTION_ID] => 
    [IBLOCK] => Array
        (
            [ID] => 1
            [~ID] => 1
            [TIMESTAMP_X] => 26.03.2021 22:40:30
            [~TIMESTAMP_X] => 26.03.2021 22:40:30
            [IBLOCK_TYPE_ID] => EN
            [~IBLOCK_TYPE_ID] => EN
            [LID] => s2
            [~LID] => s2
            [CODE] => articals
            [~CODE] => articals
            [API_CODE] => 
            [~API_CODE] => 
            [NAME] => Articles
            [~NAME] => Articles
            [ACTIVE] => Y
            [~ACTIVE] => Y
            [SORT] => 10
            [~SORT] => 10
            [LIST_PAGE_URL] => /articals/
            [~LIST_PAGE_URL] => /articals/
            [DETAIL_PAGE_URL] => /articals/#ELEMENT_CODE#.html
            [~DETAIL_PAGE_URL] => /articals/#ELEMENT_CODE#.html
            [SECTION_PAGE_URL] => 
            [~SECTION_PAGE_URL] => 
            [CANONICAL_PAGE_URL] => https://lapshinvr.com/articals/articals.html
            [~CANONICAL_PAGE_URL] => https://lapshinvr.com/articals/articals.html
            [PICTURE] => 
            [~PICTURE] => 
            [DESCRIPTION] => 
            [~DESCRIPTION] => 
            [DESCRIPTION_TYPE] => html
            [~DESCRIPTION_TYPE] => html
            [RSS_TTL] => 24
            [~RSS_TTL] => 24
            [RSS_ACTIVE] => Y
            [~RSS_ACTIVE] => Y
            [RSS_FILE_ACTIVE] => N
            [~RSS_FILE_ACTIVE] => N
            [RSS_FILE_LIMIT] => 
            [~RSS_FILE_LIMIT] => 
            [RSS_FILE_DAYS] => 
            [~RSS_FILE_DAYS] => 
            [RSS_YANDEX_ACTIVE] => N
            [~RSS_YANDEX_ACTIVE] => N
            [XML_ID] => 
            [~XML_ID] => 
            [TMP_ID] => 
            [~TMP_ID] => 
            [INDEX_ELEMENT] => Y
            [~INDEX_ELEMENT] => Y
            [INDEX_SECTION] => N
            [~INDEX_SECTION] => N
            [WORKFLOW] => N
            [~WORKFLOW] => N
            [BIZPROC] => N
            [~BIZPROC] => N
            [SECTION_CHOOSER] => L
            [~SECTION_CHOOSER] => L
            [LIST_MODE] => 
            [~LIST_MODE] => 
            [RIGHTS_MODE] => S
            [~RIGHTS_MODE] => S
            [SECTION_PROPERTY] => N
            [~SECTION_PROPERTY] => N
            [PROPERTY_INDEX] => N
            [~PROPERTY_INDEX] => N
            [VERSION] => 1
            [~VERSION] => 1
            [LAST_CONV_ELEMENT] => 0
            [~LAST_CONV_ELEMENT] => 0
            [SOCNET_GROUP_ID] => 
            [~SOCNET_GROUP_ID] => 
            [EDIT_FILE_BEFORE] => 
            [~EDIT_FILE_BEFORE] => 
            [EDIT_FILE_AFTER] => 
            [~EDIT_FILE_AFTER] => 
            [SECTIONS_NAME] => 
            [~SECTIONS_NAME] => 
            [SECTION_NAME] => 
            [~SECTION_NAME] => 
            [ELEMENTS_NAME] => Элементы
            [~ELEMENTS_NAME] => Элементы
            [ELEMENT_NAME] => Элемент
            [~ELEMENT_NAME] => Элемент
            [REST_ON] => N
            [~REST_ON] => N
            [EXTERNAL_ID] => 
            [~EXTERNAL_ID] => 
            [LANG_DIR] => /
            [~LANG_DIR] => /
            [SERVER_NAME] => lapshinvr.com
            [~SERVER_NAME] => lapshinvr.com
        )

    [LIST_PAGE_URL] => /articals/
    [~LIST_PAGE_URL] => /articals/
    [SECTION_URL] => 
    [CANONICAL_PAGE_URL] => https://lapshinvr.com/articals/work-without-a-technical-assignment.html
    [SECTION] => Array
        (
            [PATH] => Array
                (
                )

        )

    [IPROPERTY_VALUES] => Array
        (
            [ELEMENT_PREVIEW_PICTURE_FILE_NAME] => work without a technical assignment
            [SECTION_META_TITLE] => Automation articles 
            [SECTION_META_KEYWORDS] => Automation, Articles 
            [SECTION_META_DESCRIPTION] => I met something worthy of attention during the work. It is difficult to assess the necessity of posting this or that article, I tried to clean up the obvious garbage
            [SECTION_PAGE_TITLE] => Here I published articles that may be useful to someone in the production of work
            [ELEMENT_META_TITLE] => BEFORE STARTING WORKS
            [ELEMENT_META_KEYWORDS] => smarthouse, features, technical, assignment, climate, lighting
            [ELEMENT_META_DESCRIPTION] => An interesting experience of joining someone else's team. Left with nothing
            [ELEMENT_PAGE_TITLE] => Work without a technical assignment
        )

    [TIMESTAMP_X] => 17.04.2021 09:20:05
    [META_TAGS] => Array
        (
            [TITLE] => Work without a technical assignment
            [BROWSER_TITLE] => BEFORE STARTING WORKS
            [KEYWORDS] => smarthouse, features, technical, assignment, climate, lighting
            [DESCRIPTION] => An interesting experience of joining someone else's team. Left with nothing
        )

    [PREVIEW_TEXT] => Summary:
1. You should not enter the team of integrators as a contractor programmer if they already have their own programmer and your work can be quickly transferred to him. Even if they assure you that he is incredibly busy on other projects;
2. You should not start work without a completed Agreement. Advance payment without a contract and haste of the customer should not be arguments for making a decision;
3. It would be nice to read reviews about the company BEFORE STARTING WORKS;
4. You should not work for a team of people who can assign you a task one by one - you will not have time to complete it. It is highly desirable that ONE person be appointed who would distribute tasks to all other team members. [PREVIEW_PICTURE] => Array ( [ID] => 1343 [TIMESTAMP_X] => Bitrix\Main\Type\DateTime Object ( [value:protected] => DateTime Object ( [date] => 2021-04-17 09:20:05.000000 [timezone_type] => 3 [timezone] => Europe/Moscow ) ) [MODULE_ID] => iblock [HEIGHT] => 512 [WIDTH] => 512 [FILE_SIZE] => 68703 [CONTENT_TYPE] => image/jpeg [SUBDIR] => iblock/f77 [FILE_NAME] => rebb8aujpj0dpqs935juvkj72qzk5t62.jpeg [ORIGINAL_NAME] => work without a technical assignment.jpeg [DESCRIPTION] => UMC + ПЛК210 Овен [HANDLER_ID] => [EXTERNAL_ID] => ebe0264431d4d572490c5a7c6e6e9c13 [~src] => [SRC] => /upload/iblock/f77/rebb8aujpj0dpqs935juvkj72qzk5t62.jpeg [UNSAFE_SRC] => /upload/iblock/f77/rebb8aujpj0dpqs935juvkj72qzk5t62.jpeg [SAFE_SRC] => /upload/iblock/f77/rebb8aujpj0dpqs935juvkj72qzk5t62.jpeg [ALT] => Work without a technical assignment [TITLE] => Work without a technical assignment ) [DETAIL_PAGE_URL] => /articals/work-without-a-technical-assignment.html )
Ваш комментарий добавлен

Возврат к списку