RU2384700C1 - Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres - Google Patents

Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres Download PDF

Info

Publication number
RU2384700C1
RU2384700C1 RU2008131773/03A RU2008131773A RU2384700C1 RU 2384700 C1 RU2384700 C1 RU 2384700C1 RU 2008131773/03 A RU2008131773/03 A RU 2008131773/03A RU 2008131773 A RU2008131773 A RU 2008131773A RU 2384700 C1 RU2384700 C1 RU 2384700C1
Authority
RU
Russia
Prior art keywords
flag
program block
program
substitution
logic circuit
Prior art date
Application number
RU2008131773/03A
Other languages
Russian (ru)
Other versions
RU2008131773A (en
Inventor
Сергей ШАРОНОВ (US)
Сергей ШАРОНОВ
Original Assignee
Халлибертон Энерджи Сервисиз, Инк.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Халлибертон Энерджи Сервисиз, Инк. filed Critical Халлибертон Энерджи Сервисиз, Инк.
Priority to RU2008131773/03A priority Critical patent/RU2384700C1/en
Publication of RU2008131773A publication Critical patent/RU2008131773A/en
Application granted granted Critical
Publication of RU2384700C1 publication Critical patent/RU2384700C1/en

Links

Images

Abstract

FIELD: oil and gas industry.
SUBSTANCE: proposed group of inventions relate to oil producing industry, particularly to structures, systems and methods of measurement of parametres of oil well. Device of oil well contains the first storage device, containing the first program block and data structure block, the second storage device which is external relative to well, connected to the address and containing the second program block, connected to fileid and processor for downloading of the second program block from the second storage device. Additionally data structure block includes at least one component, selected form the group including address, fileid and flag. Additionally processor removes the first program block by the second program block and changes flag status after removing of the first program block. Measurement system and readout of parametres of oil well includes oil-field measuring apparatus which contains logic diagram, the first storing device and the second storing device. The first storing device is connected to logic diagram and contains the first program block and flag installed into the first position and the second storing device is external relative to mentioned device connected by logic diagram and contains the second program block. Additionally logic diagram perceives the second program block from the second storing device, replaces the first program block b the second program block and it is installed flag into the second position after finishing of the mentioned replacement. Method of readout is implemented by means of mentioned above device and system of measurement and readout of wells parametres.
EFFECT: reliability grow of measurement system operation and readout of wells parametres ensured by risk reduction of system damage at updated data.
29 cl, 7 dwg

Description

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

Изобретение относится к нефтедобывающей отрасли, в частности к устройствам, системам и способам измерения и снятия показаний параметров нефтяной скважины.The invention relates to the oil industry, in particular to devices, systems and methods for measuring and taking readings of oil well parameters.

Уровень техникиState of the art

Во многих коммерческих системах и потребительских товарах для выполнения их функций используют встроенные компьютерные системы. Встроенные компьютерные системы часто представляют собой общепромышленные микропроцессоры или микроконтроллеры, выполняющие специализированные функции по записанным в ПЗУ программам, то есть программному обеспечению, сохраняемому в энергонезависимой памяти. Так как такая конструкция не базируется на специализированных аппаратных компонентах, она обладает способностью к перенастройке и быстро расходится на рынке. Во многих случаях зашитое в ПЗУ программное обеспечение может быть обновлено для устранения программных ошибок или для добавления новых функциональных возможностей. Однако такое обновление связано с риском, если по каким-нибудь причинам энергонезависимая память повреждается, встроенная система перестает работать должным образом. Обычно такое повреждение трудно исправить, так как встроенная система перестает откликаться. Последствия таких нарушений могут быть значительными во многих системах, в которых ограничен ручной доступ, например, в промышленном оборудовании, работающем в опасных условиях, космических аппаратах и скважинной каротажной аппаратуре. Именно они работают в таких условиях, при которых могут возникать сбои, связанные с ухудшением связи, флуктуациями напряжения питания или внешним излучением. Существующие методы обновления в полной мере не застрахованы от риска возникновения сбоя.Many commercial systems and consumer products use embedded computer systems to perform their functions. Embedded computer systems are often industrial microprocessors or microcontrollers that perform specialized functions on programs written in ROM, that is, software stored in non-volatile memory. Since this design is not based on specialized hardware components, it has the ability to reconfigure and quickly diverges in the market. In many cases, firmware in ROM can be updated to fix software bugs or to add new functionality. However, such an update is associated with a risk, if for some reason the non-volatile memory is damaged, the embedded system ceases to work properly. Typically, such damage is difficult to repair because the embedded system stops responding. The consequences of such violations can be significant in many systems in which manual access is limited, for example, in industrial equipment operating in hazardous conditions, spacecraft and downhole logging equipment. It is they who work in such conditions under which failures can occur associated with a deterioration in communication, fluctuations in the supply voltage or external radiation. Existing update methods are not fully immune from the risk of failure.

Раскрытие изобретенияDisclosure of invention

Настоящее изобретение предлагает устройство нефтяной скважины, состоящее из первого запоминающего устройства, содержащего первый программный блок и блок структуры данных, включающей в себя, по меньшей мере, один компонент, выбранный из группы, включающей адрес, идентификатор файла и флаг, из второго запоминающего устройства, являющего внешним относительно скважины, связанного с адресом и содержащего второй программный блок, связанный с идентификатором файла, и из процессора для загрузки второго программного блока из второго запоминающего устройства, при этом процессор замещает первый программный блок вторым программным блоком и изменяет статус флага после замещения первого программного блока.The present invention provides an oil well device, consisting of a first memory device comprising a first program unit and a data structure unit including at least one component selected from the group including an address, a file identifier and a flag from a second memory device, which is external relative to the well, associated with the address and containing the second program unit associated with the file identifier, and from the processor to load the second program unit from the second I remember his device, the processor replaces the first program block and a second program block status flag changes after substitution of the first program block.

При перезагрузке процессора он может возобновлять замещение первого программного блока, если флаг установлен.When the processor reboots, it can resume replacing the first program block if the flag is set.

Процессор может устанавливать флаг до замещения вторым программным блоком первого программного блока и сбрасывать флаг только после того, как второй программный блок заместит первый программный блок.The processor can set the flag before replacing the second program block with the second program block and reset the flag only after the second program block replaces the first program block.

Если указанное замещение прерывается, то флаг может оставаться установленным при перезагрузке процессора.If the indicated substitution is interrupted, the flag may remain set when the processor is restarted.

Устройством согласно настоящему изобретению может быть каротажное кабельное устройство или бурильная колонна.The device according to the present invention may be a wireline cable device or drill string.

Процессор может загружать второй программный блок по Интернет-связи.The processor may download the second program unit via Internet connection.

Указанный адрес может быть IP-адресом или именем сервера.The specified address can be an IP address or a server name.

Если процессор возобновляет указанное замещение заданное число раз, то он будет прерывать попытки возобновления указанного замещения путем сброса указанного флага.If the processor resumes the specified substitution a specified number of times, then it will abort attempts to resume the specified substitution by resetting the specified flag.

Процессор может вырабатывать предупредительный сигнал, показывающий, что процессор не может успешно выполнить указанное замещение.The processor may generate a warning signal indicating that the processor cannot successfully complete the indicated substitution.

Процессор может определять, возобновлять ли указанное замещение путем определения, в функционирующем ли состоянии находится рабочая программа, находящаяся по адресу назначения, который связан с указанным флагом.The processor can determine whether to resume the indicated substitution by determining whether the working program is located in the working state located at the destination address that is associated with the specified flag.

Согласно настоящему изобретению предлагается также способ снятия показания с приборов, включающий установку флага в первое состояние, загрузку обновленного программного блока из памяти в логическую схему скважинного каротажного прибора, которую предварительно отделяют от указанной памяти, замещение в указанной логической схеме предшествующего программного блока обновленным программным блоком и при завершении указанного замещения установку флага во второе состояние.The present invention also provides a method of taking readings from instruments, including setting a flag in a first state, loading an updated software block from memory into a logic circuit of a downhole logging tool that is previously separated from said memory, replacing a previous software block with said updated logic block in said logical circuit, and when the specified substitution is completed, setting the flag to the second state.

В вышеуказанном способе может осуществляться дополнительно, в случае прерывания указанного замещения, перезагрузка указанной логической схемы и возобновление указанного замещения.In the above method, it can be carried out additionally, in case of interruption of said substitution, reloading of said logic and resuming said substitution.

Также в вышеуказанном способе может дополнительно осуществляться перезагрузка указанной логической схемы и возобновление указанного замещения при условии установки указанного флага в первое состояние.Also, in the above method, a reloading of the indicated logic circuit and resumption of the indicated substitution can be carried out additionally, provided that the flag is set to the first state.

Кроме вышеизложенного, в способе согласно настоящему изобретению дополнительно в случае прерывания указанного замещения может предусматриваться поддержание указанного флага установленным в первое состояние при перезагрузке указанной логической схемы.In addition to the foregoing, in the method according to the present invention, in addition, in case of interruption of said substitution, it may be possible to keep said flag set to the first state when the indicated logic circuit is reloaded.

При загрузке указанного обновленного программного блока может использоваться Интернет-связь.When you download the specified updated software unit can be used Internet connection.

В способе по настоящему изобретению предусматривается возможность, при загрузке указанного обновленного программного блока, передачи в указанную память IP-адреса, связанного с указанной памятью, и файлового имени, связанного с указанным обновленным программным блоком.In the method of the present invention, it is possible, upon downloading said updated software unit, to transmit to said memory an IP address associated with said memory and a file name associated with said updated program block.

При загрузке указанного обновленного программного блока может использоваться расположенный на боковой стенке порт считывания, который связывают с указанной логической схемой.When downloading the specified updated software unit can be used located on the side wall of the read port, which is associated with the specified logic circuit.

В настоящем изобретении предлагается также система измерения и снятия показаний параметров нефтяной скважины, состоящая из нефтепромыслового измерительного прибора, включающего в себя логическую схему и первое запоминающее устройство, соединенное с логической схемой, и содержащее первый программный блок и флаг, установленный в первое состояние, и из второго запоминающего устройства, являющего внешним относительно указанного прибора, связанного с логической схемой, и содержащее второй программный блок. Логическая схема воспринимает второй программный блок со второго запоминающего устройства, замещает первый программный блок вторым программным блоком и устанавливает флаг во второе состояние после завершения указанного замещения.The present invention also provides a system for measuring and taking readings of parameters of an oil well, consisting of an oilfield measuring device including a logic circuit and a first storage device connected to the logic circuit, and comprising a first program unit and a flag set to the first state, and the second storage device, which is external relative to the specified device associated with the logic circuit, and containing a second program unit. The logic receives the second program unit from the second storage device, replaces the first program unit with the second program unit, and sets the flag to the second state after completion of the indicated substitution.

В системе предусматривается возможность в случае прерывания указанного замещения перезагрузки логической схемы и автоматического возобновления ею указанного замещения.The system provides for the possibility, in case of interruption of the indicated substitution, of rebooting the logic circuit and its automatic renewal of the indicated substitution.

Логическая схема может осуществлять автоматическое возобновление указанного замещения в процессе перезагрузки.The logic may automatically resume the indicated substitution during the reboot process.

В случае прерывания указанного замещения флаг может поддерживаться установленным в первое состояние при перезагрузке логической схемы.In case of interruption of the indicated substitution, the flag may be kept set to the first state when the logic circuit is reloaded.

Флаг может являться индикатором завершения указанного замещения, и если после перезагрузки логической схемы флаг установлен в первом состоянии, то логическая схема может делать попытки завершить указанное замещение.The flag may be an indicator of the completion of the indicated substitution, and if the flag is set in the first state after the logic circuit is reloaded, the logic circuit may attempt to complete the indicated substitution.

Вышеупомянутый прибор может быть кабельным каротажным устройством или бурильной колонной.The aforementioned device may be a cable logging device or drill string.

Логическая схема может замещать первый программный блок вторым программным блоком при своем нахождении на дневной поверхности скважины.The logic may replace the first program block with a second program block when it is on the surface of the well.

Также логическая схема может замещать первый программный блок вторым программным блоком при своем нахождении в скважине.Also, the logic circuit may replace the first program block with the second program block when it is in the well.

Указанное второе запоминающее устройство может передавать в логическую схему указанный второй программный блок по сетевой связи.The specified second storage device may transmit to the logic circuit the specified second program unit via network communication.

Указанная логическая схема может загружать указанный второй программный блок из второго запоминающего устройства по сетевой связи путем передачи сохраненной информации, в которой заключается IP-адрес указанного второго запоминающего устройства или файловое имя, связанное с указанным вторым программным блоком.The specified logic circuit may download the specified second program unit from the second storage device via network communication by transmitting the stored information, which is the IP address of the specified second storage device or file name associated with the specified second program unit.

Указанная логическая схема может воспринимать второй программный блок через расположенный на боковой стенке порт считывания, выступающий на наружную поверхность прибора.The indicated logic circuit can perceive the second program unit through a read port located on the side wall, which protrudes onto the outer surface of the device.

Краткое описание чертежейBrief Description of the Drawings

Для подробного описания иллюстративных вариантов выполнения изобретения далее будет сделана ссылка на прилагаемые чертежи, на которых показано:For a detailed description of illustrative embodiments of the invention, reference will now be made to the accompanying drawings, in which:

на фиг.1 - система каротажа в процессе бурения в соответствии с различными вариантами выполнения;figure 1 - logging system during drilling in accordance with various options for execution;

на фиг.2 - система кабельного каротажа в соответствии с различными вариантами выполнения;figure 2 - cable logging system in accordance with various options for execution;

на фиг.3 - модуль обработки в соответствии с различными вариантами выполнения;figure 3 - processing module in accordance with various variants of execution;

на фиг.4 - блок-схема обработки в соответствии различными вариантами выполнения;figure 4 - block diagram of the processing in accordance with various options for execution;

на фиг.5 - структура данных, используемая при обработке в соответствии с фиг.4 и соответствующая различным вариантам выполнения;figure 5 - data structure used in processing in accordance with figure 4 and corresponding to various options for execution;

на фиг.6 - частично разобранный каротажный прибор, помещенный в модуль обработки с фиг.3, в соответствии с различными вариантами выполнения;figure 6 is a partially disassembled logging tool placed in the processing module of figure 3, in accordance with various options for execution;

на фиг.7 - детальное изображение расположенного в боковой стенке порта частично разобранного прибора с фиг.6 в соответствии с различными вариантами выполнения.Fig.7 is a detailed image located in the side wall of the port of a partially disassembled device of Fig.6 in accordance with various embodiments.

Осуществление изобретенияThe implementation of the invention

В последующем описании и формуле изобретения для обозначения конкретных системных компонентов используются различные термины. Как понятно специалисту в данной области, различные фирмы могут использовать для обозначения компонентов различные названия. В данном документе не ставиться цель провести различие между компонентами, отличающимися по названию, а не по функциональному назначению. При дальнейшем обсуждении и в формуле изобретения термины "содержащий" и "включающий" используются расширенным образом и, следовательно, должны трактоваться в смысле "содержащий, но не ограниченный…". Также термин "элемент связи" или "устройство связи" должен обозначать как непосредственное электрическое подключение, так и опосредованное соединение. Следовательно, если первый прибор соединен с вторым прибором, то это соединение может быть как непосредственным электрическим соединением, так и соединением через другие приборы и средства связи. Кроме того, термин "обновление" должен охватывать любого вида модификации, включая "расширение ресурсов", "переработку" и т.д. Кроме того, термин "флаг" может быть использован для обозначения любого подходящего типа индикации, включая одиночный бит, последовательность битов или какой-либо другой тип индикации.In the following description and claims, various terms are used to refer to specific system components. As one skilled in the art understands, various companies may use different names to designate components. This document does not intend to distinguish between components that differ in name but not in function. In further discussion and in the claims, the terms “comprising” and “including” are used in an expanded manner and, therefore, should be interpreted in the sense of “comprising, but not limited to ...”. Also, the term “communication element” or “communication device” should mean both a direct electrical connection and an indirect connection. Therefore, if the first device is connected to the second device, then this connection can be either a direct electrical connection or a connection through other devices and means of communication. In addition, the term “update” should cover any type of modification, including “resource expansion”, “recycling”, etc. In addition, the term “flag” can be used to denote any suitable type of indication, including a single bit, a sequence of bits, or some other type of indication.

Дальнейшее рассмотрение относится к различным вариантам выполнения изобретения. Хотя один или более вариантов выполнения могут быть предпочтительными, описанные варианты не должны рассматриваться или, наоборот, использоваться как ограничивающие объем изобретения, определяемый формулой изобретения. Кроме того, специалисту в данной области понятно, что последующее описание имеет широкое применение, и рассмотрение любого варианта выполнения служит только иллюстрацией, относится только к этому варианту и не предназначено для определения объема изобретения, включая формулу изобретения.Further consideration relates to various embodiments of the invention. Although one or more embodiments may be preferred, the described options should not be construed or, conversely, be used as limiting the scope of the invention defined by the claims. In addition, one of ordinary skill in the art will understand that the following description is widely used, and consideration of any embodiment is illustrative only, refers to this embodiment only, and is not intended to determine the scope of the invention, including the claims.

В данном описании представлен способ, с помощью которого программный блок, установленный во встроенную вычислительную систему, обновляют с минимальным риском или без риска повреждения системы. Более конкретно, способ позволяет обновлять программные блоки таким образом, что даже в случае прерывания процесса обновления система все же остается работоспособной. Раскрытые системы и способы особенно пригодны для использования в нефтепромысловом оборудовании, включая каротажные приборы, составляющие часть более крупных узлов.This description provides a method by which a software unit installed in an embedded computing system is updated with minimal risk or without risk of system damage. More specifically, the method allows you to update program blocks in such a way that even if the update process is interrupted, the system still remains operational. The disclosed systems and methods are particularly suitable for use in oilfield equipment, including logging tools that are part of larger units.

На фиг.1 в качестве примера показано оборудование для каротажа в процессе бурения, в которое входит бурильная колонна с одним или более приборами, имеющими программные блоки, которые можно обновлять, используя раскрытые в данном изобретении способы. На бурильной платформе 2 установлен деррик 4 с талевым блоком 6, предназначенным для подъема и спуска бурильной колонны 8. При спуске бурильной колонны 8 через роторный стол 12 ее закрепляют на ведущей трубе 10. Буровая головка 14 приводится в движение скважинным двигателем и/или за счет вращения бурильной колонны 8. При вращении буровая головка 14 образует промысловую скважину 16, проходящую через различные пласты 18 породы.Figure 1 shows, by way of example, the equipment for logging during drilling, which includes a drill string with one or more instruments having program blocks that can be updated using the methods disclosed in this invention. A derrick 4 is installed on the drilling platform 2 with a tackle block 6 designed for raising and lowering the drill string 8. When lowering the drill string 8 through the rotary table 12, it is fixed on the lead pipe 10. The drill head 14 is driven by a borehole motor and / or by rotation of the drill string 8. During rotation, the drill head 14 forms a production hole 16 passing through various formations 18 of the rock.

Насос 20 перекачивает буровой раствор через подающую трубу 22 в ведущую трубу 10, вниз по внутреннему пространству бурильной колонны 8, через отверстия в буровой головке 14 обратно на поверхность через кольцевое пространство, охватывающее буровую колонну 8, и, наконец, в резервуар 24 хранения. Буровой раствор переносит куски породы из скважины и способствует сохранению целостности скважины.The pump 20 pumps the drilling fluid through the supply pipe 22 into the lead pipe 10, down the interior of the drill string 8, through the openings in the drill head 14, back to the surface through the annular space surrounding the drill string 8, and finally into the storage tank 24. Drilling fluid transfers pieces of rock from the well and helps to maintain the integrity of the well.

Прибор 26 каротажа в процессе бурения объединен с оборудованием низа бурильной колонны вблизи буровой головки 14. По мере прохождения буровой головки через пласты породы каротажный прибор 26 собирает данные измерений, относящихся к различным свойствам формации, а также к положению буровой головки и различным другим условиям бурения. Каротажный прибор 26 может иметь форму утяжеленной бурильной трубы, то есть толстостенной трубы, придающей дополнительный вес и устойчивость, способствующие процессу бурения. В оборудование может входить телеметрический переходник, обеспечивающий передачу данных измерений прибора к поверхностному приемнику 30 и получение команд от поверхностного приемника 30.The logging device 26 during drilling is combined with the equipment of the bottom of the drill string near the drill head 14. As the drill head passes through the rock formations, the logging tool 26 collects measurement data related to various formation properties, as well as to the position of the drill head and various other drilling conditions. The logging tool 26 may be in the form of a weighted drill pipe, that is, a thick-walled pipe, giving additional weight and stability, contributing to the drilling process. The equipment may include a telemetric adapter, providing the transmission of measurement data of the device to the surface receiver 30 and receiving commands from the surface receiver 30.

В процессе бурения в различные моменты времени бурильную колонну могут извлекать из скважины. Каротажные операции могут быть выполнены как только удалят бурильную колонну. Такие каротажные операции показаны на фиг.2. Каротаж проводят с использованием кабельного каротажного прибора 34, то есть чувствительного каротажного зонда, подвешенного на кабеле 42, содержащем проводящие жилы для передачи питания к прибору и телеметрической информации от прибора на поверхность. Каротажное оборудование 44 накапливает результаты измерений с каротажного прибора 34 и содержит компьютерные блоки для обработки и хранения этих результатов. Компьютерные блоки могут представлять собой персональный компьютер, сервер, плату обработки цифрового сигнала или другой вид компьютерного блока. Компьютерные блоки могут иметь доступ по проводной или беспроводной связи в Интернет и/или в другую сеть (отдельно не показаны).During drilling at various times, the drill string can be removed from the well. Logging operations can be performed as soon as the drill string is removed. Such logging operations are shown in FIG. Logging is carried out using a cable logging tool 34, that is, a sensitive logging tool suspended on a cable 42 containing conductive wires for transmitting power to the device and telemetry information from the device to the surface. Logging equipment 44 accumulates the measurement results from the logging tool 34 and contains computer units for processing and storing these results. The computer units may be a personal computer, a server, a digital signal processing board, or another type of computer unit. Computer units may have wired or wireless access to the Internet and / or to another network (not shown separately).

В любой подходящей части бурильной колонны 8 (например, в приборе 26) и/или в любой подходящей части зонда 34 может помещаться логическая схема 300 обработки (то есть встроенная система), иллюстративный вариант выполнения которой дан на фиг.3. Логическая схема 300 обработки может выполнять различные функции, включая осуществление связи скважинного прибора с поверхностью и в обратном направлении, управление работой прибора и выполнением каротажных операций и т.д. Логическая схема 300 обработки содержит процессор 302 и запоминающее устройство 304, включающее один или более тип памяти (например, энергонезависимую память, флеш-память). Процессор 302 соединен с входным/выходным (I/O) портом 306, предназначенным для передачи и получения данных от другого электронного устройства (например, компьютера), соединенного с логической схемой 300 обработки через I/O порт 306. В запоминающем устройстве 304 установлен программный блок, включающий операционную систему (ОС) (например, UNIX, LINUX или WINDOWS) 308 и загрузчик 312 операционной системы, используемый при запуске ОС 308. ОС 308 может включать подблок 310 обновления программного блока, хотя в некоторых вариантах выполнения этот подблок может храниться отдельно от ОС 308. При выполнении процессором 302 подблок 310 обновления программного блока дает сигнал процессору 302 на загрузку обновления программного блока, необходимого для реализации способа обновления, описанного ниже. В запоминающем устройстве 304 могут храниться другие программные блоки, включая блоки данных, в записанном в ПЗУ виде и используемые при выполнении системного администрирования/служебных действий, каротажных изменениях и/или других подобных действиях. В записанных в ПЗУ программных блоках 314 могут содержаться любые подходящие виды программ, такие как операционная система, прикладные программы и т.д. Упомянутый выше способ обновления программного блока может быть использован для любых программных блоков (например, для программного блока 314, записанного в ПЗУ и сохраненного в запоминающем устройстве 304). Обновлены могут быть как один программный блок, так и более. Способ обновления программного блока может быть также использован для загрузки нового программного блока в запоминающее устройство 304. В оставшейся части данного описания как к обновленному программному блоку, так и к новому будут применяться термины "обновление программного блока", "обновленный программный блок" или аналогичные термины.In any suitable part of the drill string 8 (for example, in the device 26) and / or in any suitable part of the probe 34, a processing logic 300 (i.e., an integrated system) can be placed, an illustrative embodiment of which is given in FIG. Processing logic 300 may perform various functions, including communicating the downhole tool with the surface and in the opposite direction, controlling the operation of the tool and logging operations, etc. The processing logic 300 includes a processor 302 and a storage device 304 including one or more types of memory (e.g., non-volatile memory, flash memory). The processor 302 is connected to an input / output (I / O) port 306 for transmitting and receiving data from another electronic device (eg, a computer) connected to the processing logic 300 via an I / O port 306. A software program is installed in the storage device 304. a unit including an operating system (OS) (for example, UNIX, LINUX, or WINDOWS) 308 and an operating system loader 312 used to start OS 308. OS 308 may include a software block update subunit 310, although in some embodiments this subunit may be stored separately from OS 308. When executed by the processor 302, the software block update subunit 310 signals the processor 302 to download the software block update necessary to implement the update method described below. Other program blocks may be stored in memory 304, including data blocks, in a form written to ROM and used when performing system administration / service actions, logging changes, and / or other similar actions. The program blocks 314 recorded in the ROM may contain any suitable kinds of programs, such as an operating system, application programs, etc. The method for updating a program block mentioned above can be used for any program blocks (for example, for a program block 314 recorded in ROM and stored in a memory 304). Updated can be as one software unit, or more. The method of updating a program block can also be used to load a new program block into a storage device 304. In the remainder of this description, the terms “update program block”, “updated program block”, or similar terms will be applied to both the updated program block and the new one. .

На фиг.4 представлена блок-схема способа 400 и представляющего один из вариантов реализации способа обновления программного блока. Метод 400 может быть запущен вручную оператором. Альтернативно способ 400 может выполняться регулярно через заданные промежутки времени, которые могут быть запрограммированы в логической схеме 300. Как следует из фиг.4, выполнение способа 400 начинается с того, что процессор 302 проверяет программный подблок 310 обновления программного блока, чтобы определить, доступен ли обновленный программный блок для загрузки (этап 402). Процессор 302 может использовать программный подблок 310 обновления программного блока для определения доступности обновленного программного блока, применяя по меньшей мере один из способов проводной или беспроводной связи, описанный выше. В некоторых вариантах выполнения изобретения обновленный программный блок сохраняется в поверхностном компьютере (например, в оборудовании 44). Альтернативно обновленный программный блок может храниться в отдельном компьютере (например, на сервере или в некоторых вариантах выполнения на нескольких серверах), с которым связан по сети поверхностный компьютер (например, по Интернет-протоколу связи, такому как протокол сетевой передачи файлов (FTP), протокол передачи гипертекста (HTTP), стандартный протокол сетевых файлов (NFS)). В частности, подблок 310 обновления программного блока дает сигнал процессору 302 о направлении сигнала запроса на заданный объект (например, вышеупомянутый поверхностный компьютер) для определения готовности объекта к передаче обновленного программного блока в логическую схему 300. В свою очередь заданный объект может посылать ответный сигнал в логическую схему 300, содержащую информацию о доступности обновленного программного блока для загрузки. Локализация заданного объекта (например, IP-адреса) предусматривается в программном блоке 310 обновления программного блока, но при необходимости может быть изменена.4 is a flowchart of a method 400 and representing one embodiment of a method for updating a software block. Method 400 can be started manually by an operator. Alternatively, method 400 may be performed regularly at predetermined intervals that can be programmed in logic 300. As shown in FIG. 4, execution of method 400 begins with processor 302 checking a software subunit 310 for updating a software block to determine if an updated download program block (block 402). The processor 302 may use the software sub-block 310 to update the software block to determine the availability of the updated software block using at least one of the wired or wireless methods described above. In some embodiments of the invention, the updated program unit is stored in a surface computer (for example, in hardware 44). Alternatively, the updated program unit may be stored in a separate computer (for example, on a server or in some embodiments on several servers), to which a surface computer is connected via a network (for example, via an Internet communication protocol such as a network file transfer protocol (FTP), Hypertext Transfer Protocol (HTTP), the standard network file protocol (NFS)). In particular, the software block update subunit 310 gives a signal to the processor 302 about the direction of the request signal to a given object (for example, the aforementioned surface computer) to determine if the object is ready to transmit the updated program block to the logic circuit 300. In turn, the given object can send a response signal to a logic circuit 300 containing information about the availability of the updated software unit for download. Localization of a given object (for example, IP address) is provided in the program block 310 for updating the program block, but can be changed if necessary.

Если при взаимодействии программного подблока 310 обновления программного блока процессор определяет (например, с использованием способа, описанного выше), что обновленный программный блок доступен для загрузки (этап 402), в способе 400 предусмотрена возможность подачи процессором 302 сигнала к программному подблоку 310, который выдает соответствующий сигнал загрузчику 312 о загрузке обновленного программного блока при следующей перезагрузке логической схемы 300 (этап 404). При взаимодействии с процессором 302 программный подблок 310 обновленного программного блока выдает сигнал процессору 302 отвести определенную область памяти 304 для информации, необходимой загрузчику для загрузки обновленного программного блока при следующей перезагрузке. В альтернативных вариантах выполнения обновленный программный блок может быть загружен, как только процессор 302 определит, что обновленный программный блок доступен для загрузки (то есть до перезагрузки). По меньшей мере в некоторых таких вариантах выполнения программный подблок 310 обновления программного блока дает сигнал процессору 302 о начале загрузки обновленного программного блока и отвести определенную область памяти 304 для информации, необходимой загрузчику 312 для возобновления загрузки обновленного программного блока, если текущая загрузка прервана и логическая схема 300 обработки перезагружена. В таких случаях может быть использован признак (например, флаг, описанный ниже) для обозначения для загрузчика 312 того, что загрузка обновленного программного блока должна быть возобновлена при перезагрузке.If the processor determines (for example, using the method described above) that the updated software block is available for download (step 402) during the interaction of the software sub-block 310 of the software block, the method 400 provides for the processor 302 to provide a signal to the software sub-block 310, which outputs the corresponding signal to the loader 312 about the loading of the updated software block at the next reboot of the logic circuit 300 (step 404). When interacting with the processor 302, the software subunit 310 of the updated software block gives a signal to the processor 302 to allocate a specific area of memory 304 for the information needed by the bootloader to download the updated software block at the next reboot. In alternative embodiments, the updated program unit may be downloaded as soon as the processor 302 determines that the updated program unit is available for download (i.e., before rebooting). In at least some such embodiments, the software sub-block 310 of the software block updates the processor 302 to start loading the updated software block and allocate a specific memory area 304 for the information needed by the loader 312 to resume downloading the updated software block if the current download is interrupted and the logic 300 processing rebooted. In such cases, a flag (for example, a flag described below) may be used to indicate to the loader 312 that the download of the updated program unit should be resumed upon reboot.

Вне зависимости оттого, загружается обновленный программный блок до перезагрузки или после нее, заданная область памяти 304 отводится с учетом структуры данных, показанной на фиг.5. На фиг.5 в качестве иллюстрации представлена структура данных 500, которая может наполняться различной информацией, используемой для регулирования загрузки обновленного программного блока. Структура данных 500 хранится в памяти 304 и содержит, по меньшей мере, один элемент 501. Каждый элемент может включать поля 502, 504 и 506. Поле 502 содержит адрес, такой как имя сервера или IP-адрес (далее "IP-адрес 502") объекта, где хранится обновленный программный блок. В поле 504 находятся, по меньшей мере, один идентификатор файла (например, имя файла (файлов) или версия (версии), далее "FI 504"), связанные с обновленным программным блоком. Поле 506 содержит признак, такой как флаг (далее "флаг 506"). Программный подблок 310 обновления программного блока может давать сигнал процессору 302 установить или сбросить флаг 506 (например, один или более битов) в памяти 304. При загрузке установленный флаг 506 будет обозначать для загрузчика 312, что должна начаться загрузка программного блока или что начатая ранее, но не завершенная загрузка программного блока должна быть возобновлена. Например, если обновленный программный блок загружается до перезагрузки, но загрузка прошла неудачно, флаг может быть установлен, так чтобы при перезагрузке возобновить ввод программного блока.Regardless of whether the updated program unit is loaded before or after a reboot, the specified memory area 304 is allocated taking into account the data structure shown in FIG. 5. 5, an illustration is given of a data structure 500 that can be populated with various information used to control the loading of an updated software unit. The data structure 500 is stored in memory 304 and contains at least one element 501. Each element may include fields 502, 504 and 506. Field 502 contains an address such as a server name or IP address (hereinafter “IP address 502” ) of the object where the updated program unit is stored. In the field 504 are at least one file identifier (for example, the name of the file (s) or version (s), hereinafter “FI 504”) associated with the updated program unit. Field 506 contains a flag, such as a flag (hereinafter “flag 506"). The software sub-block 310 of the update of the program block may signal the processor 302 to set or clear the flag 506 (for example, one or more bits) in the memory 304. When downloading, the set flag 506 will indicate to the loader 312 that the download of the program block should begin, or that started earlier, but incomplete download of the program unit should be resumed. For example, if the updated program block is loaded before the reboot, but the download failed, the flag can be set so that when the reboot resumes the input of the program block.

Далее в способе 400 программный подблок 310 обновления программного блока дает сигнал процессору 302 на перезагрузку логической схемы 300 (этап 406). В некоторых вариантах выполнения программный подблок 310 обновления программного блока может давать процессору 302 сигнал на выдачу пользователю логической схемы 300 варианта отложенной перезагрузки логической схемы 300. Например, используя компьютер, соединенный с I/O портом 306, пользователь может иметь возможность определять момент в будущем, когда будет перезагружена логическая схема 300. В процессе перезагрузки статус флага 506 отражает состояние связанной с ним загрузки обновленного программного блока. Например, установленный флаг может обозначать, что логическая схема 300 перезагружена до того, как введенный обновленный программный блок должным образом сохранен в памяти. Альтернативно установленный флаг может обозначать, что никакого ввода программного блока вообще не было. Аналогично сброс флага может обозначать, что обновленный программный блок загружен и установлен должным образом.Next, in method 400, the software sub-block 310 of the software block updates the signal to the processor 302 to restart the logic circuit 300 (step 406). In some embodiments, the software sub-block 310 of the software block update may give the processor 302 a signal to give the user of the logic circuit 300 a delayed reset option of the logic circuit 300. For example, using a computer connected to the I / O port 306, the user may be able to determine the moment in the future, when the logic circuit 300 is restarted. During the reboot, the status of the flag 506 reflects the status of the associated download of the updated program unit. For example, a flag set may indicate that the logic circuit 300 has been reloaded before the updated program unit entered is properly stored in memory. Alternatively, a flag set may indicate that there was no input to a program block at all. Similarly, flashing a flag may indicate that the updated software unit has been downloaded and installed properly.

При загрузке загрузчик 312 связан с процессором 302 (этап 408). Загрузчик 312 дает сигнал процессору 302 на определение статуса флага 506 в процессе выполнения загрузки (этап 410). Если процессор 302 определяет, что флаг 506 установлен, загрузчик 312 дает сигнал процессору 302 на загрузку (или возобновление загрузки) обновленного программного блока (этап 412), имея имя (имена) файла (файлов) и/или версии, которые соответствуют FI 504. Обновленный программный блок загружается от объекта, чей IP-адрес соответствует IP-адресу 502. Загрузчик 312 может дать сигнал процессору 302 занести загруженный программный блок или файлы в неиспользованную область памяти 304. Альтернативно загрузчик 312 дает сигнал процессору 302 заменить часть или весь программный блок, уже занесенный в память 304, обновленным программным блоком. В некоторых вариантах выполнения такая перезапись содержит замену одного программного блока на другой программный блок.At boot, bootloader 312 is associated with processor 302 (step 408). The loader 312 gives a signal to the processor 302 to determine the status of the flag 506 during the download process (step 410). If processor 302 determines that flag 506 is set, bootloader 312 signals processor 302 to download (or resume downloading) the updated program block (step 412), having the file name (s) and / or version that correspond to FI 504. An updated program block is downloaded from an object whose IP address corresponds to IP address 502. Loader 312 can signal processor 302 to load the loaded program block or files into unused memory area 304. Alternatively, loader 312 signals processor 302 to replace part or all of a gram block already stored in memory 304 with an updated program block. In some embodiments, such rewriting comprises replacing one program unit with another program unit.

Например, если при выполнении программным подблоком 310 обновления программного блока процессор 302 определяет, что обновленный программный блок (имеющий файловое имя "SOFTWARE_UPDATE.EXE") доступен для загрузки с сервера, имеющего IP-адрес 65.70.55.89, то программный подблок 310 обновления программного блока дает сигнал процессору 302 занести в элемент 501 структуры данных 500 IP-адрес 65.70.55.89 и файловое имя SOFTWARE_UPDATE.EXE. Программный подблок 310 обновления программного блока также дает сигнал процессору 302 установить флаг у элемента 501. При перезагрузке загрузчик 312 совместно с процессором 302 обнаружит установленный флаг и воспримет установленный флаг, как сигнал на начало загрузки файла SOFTWARE_UPDATE.EXE от объекта с IP-адресом 65.70.55.89. Как было упомянуто ранее, хотя может быть загружен любой тип обновленного программного блока (такой как приведенный выше в качестве иллюстрации исполняемый файл), предпочтительно программные блоки загружаются целиком.For example, if the processor 302 determines that the updated program block (having the file name "SOFTWARE_UPDATE.EXE") is available for download from the server with IP address 65.70.55.89, when the software sub block 310 updates the program block, then the program block 310 updates the program block gives the signal to the processor 302 to enter the IP address 65.70.55.89 and the file name SOFTWARE_UPDATE.EXE into element 501 of the data structure 500. The software update sub-block 310 of the program block also gives a signal to the processor 302 to set a flag for the element 501. Upon reboot, the bootloader 312 together with the processor 302 will detect the set flag and perceive the set flag as a signal to start loading the SOFTWARE_UPDATE.EXE file from the object with IP address 65.70. 55.89. As mentioned previously, although any type of updated program block (such as the executable file shown above) can be downloaded, it is preferred that the program blocks are downloaded as a whole.

Загрузчик 312 дает сигнал процессору 302 мониторировать состояние загрузки и/или занесения в память обновленного программного блока (этап 414). По меньшей мере в некоторых вариантах выполнения процессор 302 мониторирует состояние загрузки путем проверки контрольной суммы загруженного программного блока и проверки того, что загруженный программный блок занесен в энергонезависимую память.The loader 312 gives a signal to the processor 302 to monitor the status of the download and / or recording of the updated program block (step 414). In at least some embodiments, the processor 302 monitors the download status by checking the checksum of the downloaded program unit and verifying that the loaded program unit is stored in non-volatile memory.

Если процесс загрузки и/или занесения в память по какой-нибудь причине прерывается (например, в случаях, когда программный блок установлен или обновлен только частично, таких как нарушение подачи питания, повреждения аппаратных средств или программ, проблемы в соединении, ошибки оператора/пользователя и т.д.) или в ином случае не пришел к успешному завершению (этап 416), загрузчик 312 предотвратит изменение процессором 302 статуса флага 506. Вместо этого флаг 506 сохраняется в установленном состоянии (этап 418). В этом случае при перезапуске логической схемы 300 загрузчик 312 определит, что флаг 506 все еще установлен, показывая, что обновленный программный блок еще не установлен и не занесен в память 304 должным образом. Тогда загрузчик 312 может дать сигнал процессору 302 на повторный запуск операции в целом загрузки и сохранения в памяти. Предпочтительно, однако, чтобы загрузчик 312 давал сигнал процессору 302 на возобновление предыдущей операции загрузки/сохранения в памяти.If the loading and / or storing process is interrupted for any reason (for example, in cases when the program unit is installed or updated only partially, such as a power failure, damage to hardware or programs, connection problems, operator / user errors etc.) or otherwise failed to complete (step 416), bootloader 312 will prevent processor 302 from changing the status of flag 506. Instead, flag 506 is saved in the set state (step 418). In this case, when the logic 300 is restarted, the loader 312 determines that the flag 506 is still set, indicating that the updated program unit has not yet been installed and is not properly stored in the memory 304. Then the loader 312 can signal the processor 302 to restart the operation as a whole load and store in memory. Preferably, however, the loader 312 signals the processor 302 to resume the previous load / store operation.

Предшествующая операция загрузки/занесения в память может быть возобновлена с использованием структуры данных 500. Хотя это конкретно не показано на фиг.5, по меньшей мере в некоторых вариантах выполнения, по меньшей мере, один элемент 501 структуры данных 500 может содержать адрес назначения, показывающий, куда в логической схеме 300 должен быть занесен обновляемый программный блок, полученный по указанному IP-адресу. В случае, если обновление программного блока не было выполнено должным образом и логическая схема 300 перезагружается, загрузчик 312 дает сигнал процессору 302 на проверку адреса назначения в элементе 501, чтобы определить, было ли обновление программного блока должным образом загружено и установлено (например, работоспособен ли программный блок по адресу назначения). Если обновленный программный блок не был должным образом загружен или установлен, загрузчик 312 дает сигнал процессору на возобновление операции загрузки/занесения в память по адресу назначения, обозначенному в элементе 501. Объем настоящего раскрытия не ограничен данным конкретным способом, и возможны также другие способы определения состояния ранее выполненной операции загрузки/занесения в память программного блока.The previous load / store operation may be resumed using the data structure 500. Although not specifically shown in FIG. 5, in at least some embodiments, at least one element 501 of the data structure 500 may comprise a destination address showing where the updated program unit received at the specified IP address should be entered in the logic 300. If the update of the program block was not performed properly and the logic circuit 300 reboots, the loader 312 gives a signal to the processor 302 to check the destination address in element 501 to determine whether the update of the program block was properly downloaded and installed (for example, is it working program block at destination address). If the updated program block has not been properly downloaded or installed, the loader 312 signals the processor to resume the download / memory operation at the destination address indicated in element 501. The scope of the present disclosure is not limited to this particular method, and other methods of determining the state are also possible. previously performed loading / recording operation of the program unit.

Когда процессор 302 определит, что обновленный программный блок должным образом загружен и сохранен в памяти 304 (этап 416), загрузчик 312 дает сигнал процессору 302 на снятие флага 506 (этап 420). Так как флаг 506 больше не установлен, при следующей перезагрузке процессор 302 не будет делать попытки загрузить обновленный программный блок. После выдачи загрузчиком 312 сигнала процессору 302 на сброс флага 506 (этап 420) в способе 400 предусмотрен запуск загрузчиком ОС 308 (этап 422).When processor 302 determines that the updated program unit has been properly downloaded and stored in memory 304 (step 416), bootloader 312 signals processor 302 to clear flag 506 (step 420). Since flag 506 is no longer set, the next time it reboots, processor 302 will not attempt to download the updated software unit. After the loader 312 issues a signal to the processor 302 to reset the flag 506 (step 420), the method 400 provides for the loader to start the OS 308 (step 422).

В некоторых случаях могут быть уставлены несколько флагов 501 в нескольких элементах. Каждый установленный флаг может быть связан с предназначенным для выполнения обновлением различных программных блоков. В каждом случае операции, выполняемые в этапах с 406 по 420 с фиг.4, повторяются по мере необходимости до тех пор, пока каждый установленный флаг не будет сброшен благодаря успешному выполнению обновления программного блока.In some cases, several flags 501 in several elements may be set. Each flag set can be associated with an update to various program blocks. In each case, the operations performed in steps 406 through 420 of FIG. 4 are repeated as necessary until each flag set is cleared by successfully updating the software unit.

В некоторых случаях сбои в работе аппаратных средств или программного обеспечения могут помешать успешному обновлению программного блока. В таких случаях по меньшей мере некоторые операции способа 400 могут быть выполнены повторно с малым успехом или без него. Соответственно, загрузчик 312 может быть выполнен с возможностью прекращения попыток обновления программного блока после заданного числа повторов. Например, загрузчик 312 может быть выполнен на прекращение попыток обновления программного блока после того, как закончились неудачей десять попыток. В этом случае после неудачной десятой попытки обновления программного блока загрузчик 312 может дать сигнал процессору 302 на прекращение дальнейших попыток обновления (например, путем сброса соответствующего флага в структуре данных 500) и затем сигнал на выдачу предупредительного сигнала. В некоторых вариантах выполнения такой предупредительный сигнал можно получить по свечению светодиода (отдельно не показан), соединенного с логической схемой 300. В других вариантах выполнения такой предупредительный сигнал можно получить в виде электронного сообщения или сигнала, поступающего на электронное устройство (например, компьютер), не входящее в логическую схему 300 (например, оборудование 44), через I/O порт 306. При получении этого сигнала пользователь может попытаться устранить сбой и возобновить попытки обновления программного блока.In some cases, hardware or software malfunctions can interfere with the successful updating of the software unit. In such cases, at least some operations of method 400 may be performed repeatedly with little or no success. Accordingly, the bootloader 312 may be configured to stop attempts to update the software unit after a given number of retries. For example, loader 312 may be executed to terminate attempts to update a software block after ten attempts have failed. In this case, after the unsuccessful tenth attempt to update the software unit, the loader 312 can signal the processor 302 to stop further update attempts (for example, by resetting the corresponding flag in the data structure 500) and then a signal to issue an alert signal. In some embodiments, such a warning signal can be obtained by illuminating an LED (not shown separately) connected to the logic circuit 300. In other embodiments, such a warning signal can be received in the form of an electronic message or a signal received by an electronic device (eg, a computer), not included in the logic circuit 300 (for example, equipment 44), via I / O port 306. When this signal is received, the user can try to eliminate the failure and resume attempts to update the software loka.

Метод, описанный со ссылкой на фиг.4, может быть выполнен, когда логическая схема 300 находится или в скважине, или на поверхности. В вариантах выполнения, в которых логическая схема 300 является частью зонда 34, эта логическая схема может находиться в скважине и, следовательно, содержать программный блок, обновляемый в скважине. Связь (например, при загрузке программного блока) между логической схемой 300 и каротажным оборудованием 44 может осуществляться по кабелю 42. По меньшей мере в некоторых вариантах выполнения каротажное оборудование 44 имеет выход в сеть и/или в Интернет. В некоторых таких вариантах выполнения в логическую схему 300 можно загружать информацию (например, об обновлении программного блока или апгрейде) из сети и/или Интернета через каротажное оборудование 44.The method described with reference to FIG. 4 may be performed when the logic circuit 300 is located either in the well or on the surface. In embodiments where the logic 300 is part of the probe 34, this logic may be in the well and therefore comprise a software block updated in the well. Communication (for example, when downloading a software block) between the logic circuit 300 and the logging equipment 44 may be via cable 42. At least in some embodiments, the logging equipment 44 is connected to a network and / or the Internet. In some such embodiments, it is possible to download information (eg, about updating a software block or upgrade) from the network and / or the Internet through the logging equipment 44 to the logic circuit 300.

В некоторых вариантах выполнения логическая схема 300 входит в бурильную колонну 8 в виде прибора 26. Частично разобранный прибор 600 показан на фиг.6. Прибор 600 содержит расположенный на боковой стенке порт 602 считывания, к которому обеспечен свободный доступ после полной установки прибора и связи его с бурильной колонной. По сравнению с другими способами, в которых оператор должен, например, демонтировать прибор, чтобы добраться до встроенной логической схемы с целью обновления программного блока, расположенный на боковой стенке порт 602 считывания облегчает электрический доступ к встроенной логической схеме 300 и дает возможность оператору проводить быстрое обновление программного блока. Таким образом снижаются или минимизируются как производственные простои, так и альтернативные издержки.In some embodiments, the logic 300 enters the drill string 8 as an instrument 26. A partially disassembled instrument 600 is shown in FIG. The device 600 comprises a read port 602 located on the side wall, to which free access is ensured after the device is fully installed and connected to the drill string. Compared to other methods in which the operator must, for example, dismantle the device in order to get to the integrated logic to update the software unit, the read port 602 located on the side wall facilitates electrical access to the integrated logic 300 and allows the operator to perform a quick update program block. In this way, both production downtime and opportunity costs are reduced or minimized.

В некоторых вариантах выполнения расположенный на боковой стенке порт 602 считывания может быть соединен с I/O портом 306. В других вариантах выполнения расположенный на боковой стенке порт 602 считывания можно рассматривать как I/O порт 306. Более подробно расположенный на боковой стенке порт 602 считывания представлен на фиг.7. Как показано на фиг.7, расположенный на боковой стенке порт 602 считывания содержит группу штырьков 604, выполненных с возможностью сопряжения с кабелем связи (отдельно не показан), соединенным с компьютером, входящим, например, в оборудование 44. Таким путем данные предаются между логической схемой 300 и связанным с ней любым электронным устройством. В вариантах выполнения, в которых логическая схема 300 входит в бурильную колонну 8, процесс, отображенный на фиг.4, предпочтительно выполняется на поверхности при частично разобранном приборе 600 (то есть логической схеме 300).In some embodiments, the readout port 602 located on the side wall can be connected to the I / O port 306. In other embodiments, the readout port 602 located on the side wall can be considered as I / O port 306. The readout port 602 located on the side wall in more detail presented in Fig.7. As shown in FIG. 7, the read port 602 located on the side wall contains a group of pins 604 that are capable of pairing with a communication cable (not shown separately) connected to a computer, such as equipment 44, for example. In this way, data is transferred between the logical circuit 300 and any electronic device associated with it. In embodiments where the logic 300 is included in the drill string 8, the process shown in FIG. 4 is preferably performed on the surface with a partially disassembled device 600 (i.e., logic 300).

Предшествующее рассмотрение предназначено для иллюстрации принципов и различных вариантов выполнения настоящего изобретения. После рассмотрения предшествующего описания для специалистов в данной области техники станут очевидными различные модификации и вариации выполнения изобретения. Задача нижеследующей формулы изобретения заключается в том, чтобы представить и охватить все такие вариации и модификации.The foregoing discussion is intended to illustrate the principles and various embodiments of the present invention. After reviewing the foregoing description, various modifications and variations of the invention will become apparent to those skilled in the art. The object of the following claims is to present and cover all such variations and modifications.

Claims (29)

1. Устройство нефтяной скважины, состоящее из первого запоминающего устройства, содержащего первый программный блок и блок структуры данных, включающей в себя, по меньшей мере, один компонент, выбранный из группы, включающей адрес, идентификатор файла и флаг, из второго запоминающего устройства, являющегося внешним относительно скважины, связанного с адресом и содержащего второй программный блок, связанный с идентификатором файла, и из процессора для загрузки второго программного блока из второго запоминающего устройства, при этом процессор замещает первый программный блок вторым программным блоком и изменяет статус флага после замещения первого программного блока.1. An oil well device, consisting of a first memory device comprising a first program unit and a data structure unit including at least one component selected from the group including an address, a file identifier, and a flag, from a second memory device, which is external relative to the well associated with the address and containing the second program unit associated with the file identifier, and from the processor to load the second program unit from the second storage device, wherein a quarrel replaces the first program block with a second program block and changes the status of the flag after replacing the first program block. 2. Устройство по п.1, в котором при перезагрузке процессора он возобновляет замещение первого программного блока, если флаг установлен.2. The device according to claim 1, in which when the processor is restarted, it resumes the replacement of the first program unit, if the flag is set. 3. Устройство по п.1, в котором процессор устанавливает флаг до замещения вторым программным блоком первого программного блока и сбрасывает флаг только после того, как второй программный блок заместит первый программный блок.3. The device according to claim 1, in which the processor sets the flag before replacing the second program block with the first program block and resets the flag only after the second program block replaces the first program block. 4. Устройство по п.3, в котором, если указанное замещение прервано, флаг остается установленным при перезагрузке процессора.4. The device according to claim 3, in which, if the specified substitution is interrupted, the flag remains set when the processor is restarted. 5. Устройство по п.1, которое является устройством, выбранным из группы, включающей каротажное кабельное устройство и бурильную колонну.5. The device according to claim 1, which is a device selected from the group comprising a wireline cable device and a drill string. 6. Устройство по п.1, в котором процессор загружает второй программный блок по Интернет-связи.6. The device according to claim 1, in which the processor downloads the second program unit via Internet connection. 7. Устройство по п.1, в котором указанный адрес выбирают из группы включающей IP-адрес и имя сервера.7. The device according to claim 1, in which the specified address is selected from the group including the IP address and server name. 8. Устройство по п.1, в котором, если процессор возобновляет указанное замещение заданное число раз, он прерывает попытки возобновления указанного замещения.8. The device according to claim 1, in which, if the processor resumes the specified substitution a specified number of times, it aborts attempts to resume the specified substitution. 9. Устройство по п.8, в котором процессор прерывает попытки возобновления указанного замещения путем сброса указанного флага.9. The device of claim 8, in which the processor aborts attempts to resume said substitution by resetting said flag. 10. Устройство по п.8, в котором процессор вырабатывает предупредительный сигнал, показывающий, что процессор не может успешно выполнить указанное замещение.10. The device according to claim 8, in which the processor generates a warning signal indicating that the processor cannot successfully complete the indicated substitution. 11. Устройство по п.1, в котором процессор определяет, возобновлять ли указанное замещение путем определения, в функционирующем ли состоянии находится рабочая программа, находящаяся по адресу назначения, который связан с указанным флагом.11. The device according to claim 1, in which the processor determines whether to resume the specified substitution by determining whether the working program is located in the working state located at the destination address that is associated with the specified flag. 12. Способ снятия показания с приборов, включающий установку флага в первое состояние, загрузку обновленного программного блока из памяти в логическую схему скважинного каротажного прибора, которую предварительно отделяют от указанной памяти, замещение в указанной логической схеме предшествующего программного блока обновленным программным блоком и при завершении указанного замещения установку флага во второе состояние.12. The method of taking readings from the instruments, including setting the flag to the first state, loading the updated program block from memory into the logic circuit of the downhole logging tool, which is previously separated from the indicated memory, replacing the previous program block with the updated program block in the indicated logic circuit and upon completion of the indicated replacing the flag setting in the second state. 13. Способ по п.12, включающий дополнительно, в случае прерывания указанного замещения, перезагрузку указанной логической схемы и возобновление указанного замещения.13. The method of claim 12, further comprising, in the event of interruption of said substitution, reloading of said logic and resuming said substitution. 14. Способ по п.12, включающий дополнительно перезагрузку указанной логической схемы и, если указанный флаг установлен в первое состояние, возобновление указанного замещения.14. The method of claim 12, further comprising reloading said logic circuit and, if said flag is set to a first state, resuming said substitution. 15. Способ по п.12, включающий дополнительно в случае прерывания указанного замещения поддержание указанного флага установленным в первое состояние при перезагрузке указанной логической схемы.15. The method according to claim 12, further comprising, in case of interruption of said substitution, maintaining said flag set to the first state upon rebooting said logic circuit. 16. Способ по п.12, в котором при загрузке указанного обновленного программного блока используют Интернет-связь.16. The method according to item 12, in which when downloading the specified updated software unit using Internet connection. 17. Способ по п.12, в котором при загрузке указанного обновленного программного блока передают в указанную память IP-адрес, связанный с указанной памятью, и файловое имя, связанное с указанным обновленным программным блоком.17. The method according to item 12, in which when downloading the specified updated program unit, the IP address associated with the specified memory and the file name associated with the specified updated program unit are transferred to the indicated memory. 18. Способ по п.12, в котором при загрузке указанного обновленного программного блока используют расположенный на боковой стенке порт считывания, который связывают с указанной логической схемой.18. The method according to item 12, in which when downloading the specified updated software unit, a read port located on the side wall is used, which is connected to the specified logic circuit. 19. Система измерения и снятия показаний параметров нефтяной скважины, состоящая из нефтепромыслового измерительного прибора, включающего в себя логическую схему и первое запоминающее устройство, соединенное с логической схемой и содержащее первый программный блок и флаг, установленный в первое состояние, и из второго запоминающего устройства, являющегося внешним относительно указанного прибора, связанного с логической схемой и содержащее второй программный блок, при этом логическая схема воспринимает второй программный блок со второго запоминающего устройства, замещает первый программный блок вторым программным блоком и устанавливает флаг во второе состояние после завершения указанного замещения.19. A system for measuring and taking readings of parameters of an oil well, consisting of an oilfield measuring device including a logic circuit and a first memory device connected to a logic circuit and containing a first program unit and a flag set to the first state, and from a second memory device, which is external relative to the specified device associated with the logic circuit and containing the second program block, while the logic circuit perceives the second program block from the second th memory device, the first program block replaces the second program block, and sets a flag to the second state after the completion of said substitution. 20. Система по п.19, в которой в случае прерывания указанного замещения логическая схема перезагружается и автоматически возобновляет указанное замещение.20. The system according to claim 19, in which in case of interruption of the indicated substitution, the logic circuit restarts and automatically resumes the indicated substitution. 21. Система по п.19, в которой логическая схема автоматически возобновляет указанное замещение в процессе перезагрузки.21. The system according to claim 19, in which the logic circuit automatically resumes the indicated substitution during the reboot process. 22. Система по п.19, в которой в случае прерывания указанного замещения флаг поддерживается установленным в первое состояние при перезагрузке логической схемы.22. The system according to claim 19, in which, in case of interruption of said substitution, the flag is kept set to the first state when the logic circuit is reloaded. 23. Система по п.19, в которой флаг является индикатором завершения указанного замещения, и, если после перезагрузки логической схемы флаг установлен в первом состоянии, то логическая схема делает попытки завершить указанное замещение.23. The system according to claim 19, in which the flag is an indicator of the completion of the indicated substitution, and if the flag is set in the first state after the logical circuit is reloaded, the logical circuit attempts to complete the specified substitution. 24. Система по п.19, в которой прибор является прибором, выбранным из группы, включающей кабельное каротажное устройство и бурильную колонну.24. The system according to claim 19, in which the device is a device selected from the group comprising a cable logging device and a drill string. 25. Система по п.19, в которой логическая схема замещает первый программный блок вторым программным блоком, когда логическая схема находится на дневной поверхности скважины.25. The system of claim 19, wherein the logic circuit replaces the first program block with the second program block when the logic circuit is on the surface of the well. 26. Система по п.19, в которой логическая схема замещает первый программный блок вторым программным блоком, когда логическая схема находится в скважине.26. The system of claim 19, wherein the logic circuit replaces the first program block with the second program block when the logic circuit is in the well. 27. Система по п.19, в которой указанное второе запоминающее устройство передает в логическую схему указанный второй программный блок по сетевой связи.27. The system of claim 19, wherein said second storage device transmits to said logic the said second program unit via network communication. 28. Система по п.27, в которой указанная логическая схема загружает указанный второй программный блок из второго запоминающего устройства по сетевой связи путем передачи сохраненной информации, выбираемой из группы, включающей IP-адрес указанного второго запоминающего устройства и файловое имя, связанное с указанным вторым программным блоком.28. The system of claim 27, wherein said logical circuit downloads said second program unit from a second storage device via network communication by transmitting stored information selected from a group including the IP address of said second storage device and a file name associated with said second software unit. 29. Система по п.19, в которой указанная логическая схема воспринимает второй программный блок через расположенный на боковой стенке порт считывания, выступающий на наружную поверхность прибора. 29. The system of claim 19, wherein said logic circuitry receives the second program unit through a read port located on a side wall protruding onto the outer surface of the device.
RU2008131773/03A 2006-12-19 2006-12-19 Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres RU2384700C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2008131773/03A RU2384700C1 (en) 2006-12-19 2006-12-19 Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2008131773/03A RU2384700C1 (en) 2006-12-19 2006-12-19 Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres

Publications (2)

Publication Number Publication Date
RU2008131773A RU2008131773A (en) 2010-02-10
RU2384700C1 true RU2384700C1 (en) 2010-03-20

Family

ID=42123440

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2008131773/03A RU2384700C1 (en) 2006-12-19 2006-12-19 Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres

Country Status (1)

Country Link
RU (1) RU2384700C1 (en)

Also Published As

Publication number Publication date
RU2008131773A (en) 2010-02-10

Similar Documents

Publication Publication Date Title
US20100050168A1 (en) Secure firmware updates in embedded systems
KR100901903B1 (en) Self-monitoring and updating of firmware over a network
US10628290B2 (en) Generating an inner cloud environment within an outer cloud environment for testing a microservice application
US7484084B1 (en) Use of a baseboard management controller to facilitate installation of firmware in a processing system
CA2513785C (en) System for loading executable code into volatile memory in a downhole tool
US8554748B1 (en) Method and apparatus for differential file based update for embedded systems
US20040181790A1 (en) System and method for maintaining installed software compliance with build standards
CN102667716A (en) Methods and devices for updating firmware of a component using a firmware update application
EP2328088A1 (en) Home network system, gateway device, and firmware update method
US20060020845A1 (en) Unattended BIOS recovery
US8782636B2 (en) Information processing apparatus, control method thereof, and program
EP2817725B1 (en) Maintaining system firmware images remotely using a distribute file system protocol
CN110633091A (en) Electronic module and software wireless upgrading method thereof
KR20090120541A (en) Method and system for automatic recovery of an embedded operating system
US20040024878A1 (en) Network device and automatic program update technique
JP2007080167A (en) Software resource distribution system and method, and program
JP2007249748A (en) Network equipment with version management function
RU2384700C1 (en) Structure of oil well, method of readout from devices and measuring system and readout system of oil well parametres
US11814955B2 (en) Tool string telemetry network
US20180083834A1 (en) Techniques of restoring bmc configurations to multiple bmcs
Cisco Loading and Maintaining System Images
Cisco Miscellaneous System Tasks
Cisco Loading System Images, Microcode Images, and Configuration Files
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20121220