СИСТЕМЫ И СПОСОБЫ ПОВОРАЧИВАЮЩЕЙСЯ КАМЕРЫ
ROTARY CAMERA SYSTEMS AND METHODS

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится относится к системам и способам, которые поворачивают камеру на основании различной информации, связанной с транспортным средством.
УРОВЕНЬ ТЕХНИКИ
Многие люди получают удовольствие от съемки изображений и записи видео во время вождения транспортного средства, такого как легковой автомобиль, грузовой автомобиль, мотоцикл или велосипед. Например, люди могут записывать вид за передним ветровым стеклом легкового автомобиля во время вождения по живописной дороге. Другие могут записывать вид во время разгона своего легкового автомобиля или мотоцикла в течение гонки или другого зрелищного мероприятия. Существующие системы прикрепляют камеры, смартфоны и другие устройства захвата изображений к транспортному средству в неподвижном положении (например, захватывающем изображения непосредственно перед транспортным средством). Этот тип положения с неподвижной установкой поддерживает запись только под одним углом или точкой обзора. Опасная обстановка возникает в результате, если водитель транспортного средства пытается вручную изменить положение устройства захвата изображений во время активного вождения транспортного средства.
Сущность изобретения
В одном варианте осуществления охарактеризовано устройство, содержащее: двигатель, имеющий механизм установки камеры и выполненный с возможностью поворачивать камеру, установленную на него; модуль связи, выполненный с возможностью принимать данные транспортного средства от транспортного средства; и модуль управления поворачиванием, присоединенный к двигателю и к модулю связи, причем модуль управления поворачиванием выполнен с возможностью определять текущую угловую ориентацию двигателя и определять скорость и направление для поворачивания двигателя на основании принятых данных транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором данные транспортного средства включают в себя по меньшей мере одно из текущего угла поворота управляемых колес транспортного средства, поперечного ускорения, скорости поворота рулевого колеса и угловой скорости рыскания транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором пользователь транспортного средства определяет значение смещения, дополнительно используемое модулем управления поворачиванием для определения скорости и направления для поворачивания двигателя.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором модуль управления поворачиванием дополнительно определяет скорость и направление для поворачивания двигателя на основании требуемой ориентации двигателя.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, дополнительно содержащее оптический датчик положения, присоединенный к двигателю и к модулю управления поворачиванием, причем оптический датчик положения выполнен с возможностью контролировать угловое положение двигателя.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором модуль управления поворачиванием ограничивает поворот двигателя предварительно определенным диапазоном ориентаций.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором предварительно определенный диапазон ориентаций выбирается пользователем камеры.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором модуль управления поворачиванием включает в себя множество предварительно определенных диапазонов ориентации, и модуль управления поворачиванием ограничивает вращение двигателя, чтобы поддерживать предварительно определенные диапазоны ориентации.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором механизм установки включает в себя установочную пластину, прикрепленную к приводному валу двигателя, и при этом установочная пластина выполнена с возможностью закреплять камеру в ориентации, известной модулю управления поворачиванием.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором двигатель, модуль связи и модуль управления поворачиванием установлены снаружи транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, дополнительно содержащее элемент установки на транспортном средстве, выполненный с возможностью прикреплять устройство к транспортному средству.
В другом варианте осуществления охарактеризован способ, содержащий этапы, на которых: принимают требуемую ориентацию двигателя, установленного на транспортное средство, причем двигатель имеет камеру, установленную на него; принимают данные транспортного средства, связанные с транспортным средством; определяют, с использованием одного или более процессоров, следует ли поворачивать двигатель, на основании требуемой ориентации двигателя и принятых данных транспортного средства; в ответ на решение поворачивать двигатель: определяют, с использованием одного или более процессоров, в каком направлении поворачивать двигатель; определяют, с использованием одного или более процессоров, количество градусов для поворачивания двигателя; определяют, с использованием одного или более процессоров, скорость для поворачивания двигателя; и формируют, с использованием одного или более процессоров, команды для поворачивания двигателя на основании направления для поворачивания двигателя, количества градусов для поворачивания двигателя и скорости для поворачивания двигателя.
В еще одном дополнительном варианте осуществления охарактеризован способ, в котором данные транспортного средства включают в себя текущую скорость транспортного средства и текущий угол поворота управляемых колес транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризован способ, дополнительно содержащий этап, на котором передают команды на двигатель.
В еще одном дополнительном варианте осуществления охарактеризован способ, в котором принимают данные текущего углового положения от двигателя.
В еще одном дополнительном варианте осуществления охарактеризован способ, в котором требуемая ориентация двигателя включает в себя предварительно определенный диапазон ориентаций.
В еще одном дополнительном варианте осуществления охарактеризован способ, в котором требуемая ориентация двигателя включает в себя множество предварительно определенных диапазонов ориентаций.
В другом варианте осуществления охарактеризовано устройство, содержащее: двигатель, имеющий механизм установки камеры и выполненный с возможностью поворачивать камеру, установленную на него; модуль связи, выполненный с возможностью принимать данные транспортного средства от транспортного средства; и модуль управления поворачиванием, присоединенный к двигателю и к модулю связи, причем модуль управления поворачиванием выполнен с возможностью определять текущую угловую ориентацию двигателя и требуемую ориентацию двигателя, а модуль управления поворачиванием дополнительно выполнен с возможностью определять направление, скорость и количество градусов для поворачивания двигателя на основании требуемой ориентации двигателя и принятых данных транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором данные транспортного средства включают в себя по меньшей мере одно из текущего угла поворота управляемых колес транспортного средства, поперечного ускорения, скорости поворота рулевого колеса и угловой скорости рыскания транспортного средства.
В еще одном дополнительном варианте осуществления охарактеризовано устройство, в котором модуль управления поворачиванием ограничивает поворот двигателя предварительно определенным диапазоном ориентаций.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Неограничивающие и неисчерпывающие варианты осуществления настоящего изобретения описаны со ссылкой на следующие фигуры, на которых одинаковые номера ссылок указывают на идентичные части на всем протяжении различных фигур, если не указан иной способ действий.
Фиг. 1 - структурная схема, изображающая вариант осуществления системы поворачивающейся камеры.
Фиг. 2 - структурная схема, изображающая вариант осуществления модуля управления поворачиванием.
Фиг. 3 - блок-схема последовательности операций способа, изображающая вариант осуществления способа для поворачивания двигателя на основании данных, принятых из транспортного средства.
Фиг. 4 - блок-схема последовательности операций способа, изображающая вариант осуществления способа для поворачивания двигателя на основании предварительно определенного диапазона ориентации.
Фиг. 5A и 5B изображают многочисленные предварительно определенные диапазоны ориентации, связанные с транспортным средством.
ПОДРОБНОЕ ОПИСАНИЕ
В нижеследующем описании сделана ссылка на прилагаемые чертежи, которые формируют его часть, и на которых, в качестве иллюстрации, показаны конкретные примерные варианты осуществления, в которых изобретение может быть осуществлено на практике. Эти варианты осуществления описаны достаточно подробно, чтобы давать специалистам в данной области техники возможность осуществить на практике концепции, раскрытые в материалах настоящей заявки, и должно быть понятно, что могут быть произведены изменения в отношении различных раскрытых вариантов осуществления, и другие варианты осуществления могут использоваться, не выходя из объема настоящего изобретения. Нижеследующее подробное описание, поэтому, не должно пониматься в ограничительном смысле.
Ссылка на всем протяжении этого описания изобретения на «один из вариантов осуществления», «вариант осуществления», «один из примеров» или «пример» означает, что конкретный признак, конструкция или характеристика, описанные в связи с вариантом осуществления или примером, включены по меньшей мере в один вариант осуществления настоящего изобретения. Таким образом, появление фраз «в одном из вариантов осуществления» или «в варианте осуществления», «один из примеров» или «пример» в разных местах на всем протяжении этого описания изобретения не обязательно всегда ссылается на один и тот же вариант осуществления или пример. Более того, конкретные признаки, конструкции, базы данных или характеристики могут комбинироваться в любых пригодных комбинациях и/или подкомбинациях в одном или более вариантов осуществления или примеров. В дополнение, следует понимать, что фигуры, предоставленные таким образом, предназначены для целей разъяснения рядовым специалистам в данной области техники, и что чертежи не обязательно начерчены в масштабе.
Варианты осуществления в соответствии с настоящим изобретением могут быть воплощены в виде устройства, способа или компьютерного программного продукта. Соответственно, настоящее изобретение может принимать форму состоящего полностью из аппаратных средств варианта осуществления, состоящего полностью из программного обеспечения варианта осуществления (включающего в себя микропрограммное обеспечение, резидентное программное обеспечение, микрокод, и т.п.) или варианта осуществления, объединяющего аспекты программного обеспечения и аппаратных средств, которые, в целом, все могут указываться ссылкой в материалах настоящей заявки как «схема», «модуль» или «система». Более того, варианты осуществления настоящего изобретения могут принимать форму компьютерного программного продукта, воплощенного на любом материальном носителе представления, имеющем используемую компьютером управляющую программу, воплощенную на носителе.
Может использоваться любая комбинация одного или более используемых компьютером или компьютерно-читаемых носителей. Например, компьютерно-читаемый носитель может включать в себя одно или более из съемной компьютерной дискеты, жесткого диска, оперативного запоминающего устройства (ОЗУ, RAM), постоянного запоминающего устройства (ПЗУ, ROM), стираемого программируемого постоянного запоминающего устройства (СППЗУ, EPROM или флэш-памяти), съемного постоянного запоминающего устройства на компакт-диске (CDROM), оптического запоминающего устройства и магнитного запоминающего устройства. Компьютерная управляющая программа для выполнения операций по настоящему изобретению может быть написана на любой комбинации одного или более языков программирования. Такая программа может компилироваться из исходной программы на компьютерно-читаемый язык ассемблера или в машинный код, пригодный для устройства или компьютера, на котором будет выполняться программа.
Варианты осуществления также могут быть реализованы в облачных вычислительных средах. В этом описании и нижеследующей формуле изобретения, «облачные вычисления» могут быть определены в качестве модели для предоставления возможности повсеместного, удобного, действующего по запросу сетевого доступа к совместно используемому объединению конфигурируемых вычислительных ресурсов (например, сетей, серверов, хранилищ, приложений и служб), которые могут быстро предоставляться с помощью виртуализации и освобождаться с минимальными усилиями на администрирование или взаимодействием с поставщиком услуг, а кроме того, соответствующим образом масштабироваться. Облачная модель может состоять из различных характеристик (например, действующего по запросу самообслуживания, обширного сетевого доступа, создания объединения ресурсов, быстрой адаптивности и измеримого обслуживания), моделей обслуживания (например, программного обеспечения в виде услуги («SaaS»), платформы в виде услуги («PaaS») и инфраструктуры в виде услуги («IaaS»)) и моделей развертывания (например, частного облака, коллективного облака, общедоступного облака и гибридного облака).
Блок-схемы последовательностей операций способов или структурные схемы на прилагаемых фигурах иллюстрируют архитектуру, функциональные возможности, работу возможных реализаций систем, способов и компьютерных программных продуктов согласно различным вариантам осуществления настоящего изобретения. В этом отношении, каждый структурный элемент на блок-схемах последовательности операций способа или структурных схемах может представлять собой модуль, сегмент, порцию кода, которая содержит одну или более исполняемых команд для реализации заданной логической функции(ий). Также будет отмечено, что каждый структурный элемент структурных схем и/или блок-схем последовательностей операций способа, и комбинации структурных элементов структурных схем и/или блок-схем последовательностей операций способа могут быть реализованы основанными на аппаратных средствах специального назначения системами, которые выполняют заданные функции или действия, или комбинациями аппаратных средств специального назначения и компьютерных команд. Эти команды компьютерной программы также могут храниться на компьютерно-читаемом носителе, который может управлять компьютером или другим программируемым устройством обработки данных, чтобы функционировали конкретным образом, так чтобы команды, хранимые на компьютерно-читаемом носителе, создавали продукт, включающий в себя командное средство, который реализует функцию/действие, заданные в структурном элементе или структурных элементах блок-схемы последовательности операций способа и/или структурной схемы.
Фиг. 1 - структурная схема, изображающая вариант осуществления системы 100 поворачивающейся камеры. Устройство 102 сбора данных транспортного средства принимает данные транспортного средства из транспортного средства, на которое установлена система 100 поворачивающейся камеры. Данные транспортного средства, например, включают в себя скорость транспортного средства, местоположение транспортного средства, ориентацию транспортного средства, угол поворота управляемых колес, скорость вращения рулевого колеса, поперечное ускорение и угловую скорость рыскания транспортного средства. Данные транспортного средства могут выдаваться одним или более датчиков и/или систем управления транспортного средства, связанных с транспортным средством, таких как датчики скорости, датчики угла поворота управляемых колес, датчики угла рыскания, датчики ускорения, гироскопы, модули GPS (глобальной системы определения местоположения), и тому подобное. Данные транспортного средства передаются в устройство 102 сбора данных транспортного средства с использованием любой среды связи (например, проводной или беспроводной) и любого протокола связи. В некоторых вариантах осуществления данные транспортного средства принимаются устройством 102 сбора данных транспортного средства на непрерывной основе, так чтобы данные транспортного средства были по существу данными в реальном времени. В других вариантах осуществления, устройство 102 сбора данных транспортного средства принимает данные транспортного средства через равные промежутки времени (например, каждые 500 миллисекунд или каждую секунду).
Модуль 104 связи присоединен к устройству 102 сбора данных транспортного средства и принимает по меньшей мере часть данных транспортного средства, принимаемых устройством сбора данных транспортного средства. Модуль 104 связи передает данные транспортного средства в модуль 106 управления поворачиванием, который управляет работой двигателя 108, как обсуждено в материалах настоящей заявки. Двигатель 108 включает в себя приводной вал 112, присоединенный к пластине 114, на которую установлена камера 110. По мере того, как двигатель 108 вращает приводной вал 112, камера 110 поворачивается соответствующим образом. Модуль 106 управления поворачиванием определяет, нужно ли двигателю 108 поворачиваться, на основании требуемой ориентации камеры и текущих данных транспортного средства. В некоторых вариантах осуществления, двигатель 108 может вращать приводной вал 112 по часовой стрелке или против часовой стрелки. Дополнительно, двигатель 108 может вращать приводной вал 112 на разных скоростях в зависимости от того, насколько быстро необходимо, чтобы изменялась ориентация камеры. Пластина 114 также указывается ссылкой как «установочная пластина» и предоставляет камере 110 возможность устанавливаться на двигатель 108. Пластина 114 может включать в себя любой тип механизма установки (не показан) для прикрепления камеры 110 к пластине 114, такой как зажимы, винты, фиксаторы, клей, застежки типа липучка, и тому подобное.
Дополнительно, оптический датчик 116 положения связан с двигателем 108 и определяет угловое положение двигателя 108 и/или вала 112. Оптический датчик положения передает угловое положение двигателя 108 или вала 112 в модуль 106 управления поворачиванием, которое используется модулем управления поворачиванием (наряду с текущими данными транспортного средства) для определения, нужно ли приводному валу 112 вращаться, чтобы поддерживать камеру 110 в ее требуемой ориентации. По мере того, как двигатель 108 вращает приводной вал 112, оптический датчик 116 положения передает обновленную информацию об угловом положении в модуль 106 управления поворачиванием.
Крепление 118 транспортного средства прикрепляет один или более компонентов, показанных на фиг. 1, к транспортному средству. Например, крепление 118 транспортного средства может быть прикреплено к приборной панели легкового автомобиля, ветровому стеклу легкового автомобиля, окну легкового автомобиля, багажнику на крыше легкового автомобиля, зеркалам легкового автомобиля, рулю мотоцикла, рулю велосипеда, и тому подобному. Крепление 118 транспортного средства показано в качестве прикрепленного к оптическому датчику 116 положения, но может быть прикреплено к двигателю 108, модулю 106 управления поворачиванием или любому другому компоненту или системе. Крепление 118 транспортного средства может использовать любой тип механизма установки (не показан) для присоединения крепления к транспортному средству, такой как зажимы, винты, фиксаторы, клей, застежки типа липучка, и тому подобное. В конкретном варианте осуществления, многочисленные компоненты, показанные на фиг. 1, заключены в корпусе или подобной конструкции. Такой корпус присоединен к креплению 118 транспортного средства для установки на транспортное средство.
Хотя многочисленные отдельные компоненты показаны на фиг. 1, конкретные реализации могут комбинировать многочисленные компоненты друг с другом. Например, модуль 104 связи может быть объединен с устройством 102 сбора данных транспортного средства и/или модулем 106 управления поворачиванием.
В альтернативных вариантах осуществления, устройство 102 сбора данных транспортного средства и модуль 104 связи заменены мобильным устройством, таким как смартфон или планшетный компьютер. В этих вариантах осуществления, мобильное устройство поддерживает связь с одной или более систем транспортного средства, чтобы принимать данные транспортного средства. Мобильное устройство дополнительно передает данные в модуль 106 управления поворачиванием. Мобильное устройство может поддерживать связь с системами транспортного средства и модулем 106 управления поворачиванием с использованием любого механизма связи (например, проводного или беспроводного) и любого протокола связи. В некоторых реализациях, мобильное устройство также может включать в себя приложение, которое выполняет функции модуля 106 управления поворачиванием (то есть, определение, нужно ли двигателю 108 поворачиваться, на основании требуемой ориентации камеры и текущих данных транспортного средства). Заявка также может поддерживать связь с двигателем 108 и оптическим датчиком 116 положения через мобильное устройство, на котором выполняется приложение.
Фиг. 2 - структурная схема, изображающая вариант осуществления модуля 106 управления поворачиванием. Как показано на фиг. 2, модуль 106 управления поворачиванием включает в себя диспетчер 202 связи, процессор 204 и память 206. Диспетчер 202 связи предоставляет модулю 106 управления поворачиванием возможность поддерживать связь с другими системами, такими как модуль 104 связи, двигатель 108, и тому подобное. Процессор 204 выполняет различные команды для реализации функциональных возможностей, предусмотренных модулем 106 управления поворачиванием. Память 206 хранит эти команды, а также другие данные, используемые процессором 104 или другими модулями, заключенными в модуле 106 управления поворачиванием.
Дополнительно, модуль 106 управления поворачиванием включает в себя вычислитель 208 ориентации, который определяет требуемую ориентацию двигателя 108, которая соответствует требуемой ориентации камеры 110, установленной на двигатель 108. Модуль 210 управления двигателем отправляет сигналы или команды на двигатель 108, которые дают двигателю команду поворачиваться в конкретном направлении, с конкретной скоростью и до тех пор, пока не достигнута требуемая ориентация. Модуль 110 управления двигателем также может принимать информацию о положении двигателя из оптического датчика 116 положения. Один или более предварительно определенных диапазонов ориентации 212 определены для ограничения возможных ориентаций для конкретного двигателя в отдельной реализации. Диспетчер 214 пользовательского интерфейса поддерживает пользовательский интерфейс, который предоставляет пользователю возможность определять рабочие параметры для систем и способов, описанных в материалах настоящей заявки, такие как требуемая ориентация камеры и предварительно определенные диапазоны ориентации.
Фиг. 3 - блок-схема последовательности операций способа, изображающая вариант осуществления способа 300 для поворачивания двигателя на основании данных, принятых из транспортного средства. В начале, модуль управления поворачиванием определяет текущую угловую ориентацию двигателя и требуемую ориентацию двигателя на 302. Текущая угловая ориентация, например, может определяться оптическим датчиком положения или другой системой, способной определять ориентацию двигателя или ориентацию камеры, установленной на двигатель. Требуемая ориентация, например, определяется на основании пользовательских установочных параметров или предварительно определенного диапазона ориентаций, выбранного пользователем. В некоторых реализациях, пользователь может выбирать или определять один или более диапазонов ориентаций с использованием приложения, выполняющегося на мобильном устройстве, которое поддерживает связь с одной или более систем или компонентов, обсужденных в материалах настоящей заявки. Например, приложение может поддерживать связь с описанными системами или компонентами с использованием Bluetooth, WiFi или любой другой системы передачи данных. В конкретных вариантах осуществления, приложение, выполняющееся на мобильном устройстве, может поддерживать связь с камерой, а также одной или более других систем или компонентов, обсужденных в материалах настоящей заявки.
В некоторых вариантах осуществления, одна или более систем транспортного средства (таких как информационно-развлекательная система) могут поддерживать связь с системой поворачивающейся камеры, обсужденной в материалах настоящей заявки. Эти системы транспортного средства также могут поддерживать связь с самой камерой. В качестве альтернативы, система транспортного средства может поддерживать связь с системой поворачивающейся камеры и/или самой камерой посредством обмена информацией через приложение, выполняющееся на мобильном устройстве. Эти варианты осуществления предоставляют пользователю возможность управлять поворачиванием системы камеры и/или камеры через пользовательский интерфейс систем транспортного средства, такой как элементы управления сенсорного экрана, элементы управления рулевого колеса, и тому подобное.
Способ 300 продолжается по мере того, как модуль связи принимает данные транспортного средства, связанные с транспортным средством, на 304. Модуль связи передает данные транспортного средства в модуль управления поворачиванием на 306, который определяет, на 308, следует ли поворачивать двигатель, на основании текущей угловой ориентации двигателя/камеры и принятых данных транспортного средства. Например, если текущая ориентация двигателя/камеры соответствует требуемой ориентации, и транспортное средство не поворачивает, двигателю поворачиваться не нужно. В этой ситуации, двигатель не поворачивается на 310, и способ возвращается на 304, где он продолжает контроль изменений принимаемых данных транспортного средства.
Если способ 300 определяет, что двигателю нужно поворачиваться, на 310, модуль управления поворачиванием определяет, в каком направлении следует поворачивать двигатель, на 312. Например, двигатель может поворачиваться в направлении по часовой стрелке или в направлении против часовой стрелки в зависимости от необходимого изменения ориентации у двигателя/камеры. Модуль управления поворачиванием также определяет количество градусов для поворачивания двигателя на 314. Величина поворачивания, например, зависит от величины изменения ориентации, необходимой, чтобы повернуть двигатель/камеру в требуемую ориентацию. Дополнительно, модуль управления поворачиванием определяет скорость для поворачивания двигателя 316. Скорость поворачивания, например, зависит от величины необходимого изменения ориентации, а также текущих данных транспортного средства, таких как текущая скорость транспортного средства и текущий угол поворота управляемых колес транспортного средства. Модуль управления поворачиванием отправляет надлежащие сигналы на двигатель на 318, которые дают двигателю команду поворачиваться в конкретном направлении, на заданное количество градусов, с конкретной скоростью, на основании вышеприведенных определений. После того, как поворачивание двигателя/камеры завершено, способ 300 возвращается на 304 и продолжает контроль изменений принимаемых данных транспортного средства.
В некоторых реализациях, направление поворачивания определяется на основании направления рулевого управления транспортного средства. Например, если транспортное средство поворачивает налево, двигатель может поворачиваться влево, чтобы поддерживать требуемую ориентацию для камеры. Конкретных реализациях, способ определяет новое положение для камеры и определяет направление поворачивания и количество градусов для поворачивания на основании этого нового положения. Например, новое положение может рассчитываться согласно:
новое положение=x+d,
где x=current_position - steering_wheel_angle,
а «current_position» - текущее положение двигателя, и «steering_wheel_angle» - текущий угол поворота рулевого колеса.
Значение «x» представляет собой количество градусов, на которое должен поворачиваться двигатель, например, на основании информации, принятой из оптического датчика положения, связанного с двигателем, и текущего угла поворота рулевого колеса (принятого в качестве части данных транспортного средства). Значение «d» представляет собой смещение, которое могло бы быть постоянным (например, жестко закодированным) или изменяться посредством одного или более элементов управления интерфейса пользователя. Смещение используется при определении, следует ли поворачивать двигатель. Например, двигатель не должен поворачиваться, если разность между текущим положением двигателя и углом поворота рулевого колеса равна значению смещения.
Если двигателю нужно поворачиваться, скорость, с которой следует поворачивать двигатель, определяется на основании скорости вращения рулевого колеса. В некоторых вариантах осуществления, скорость поворачивания двигателя по меньшей мере частично основана на угловой скорости рыскания транспортного средства, которая определяется гироскопом, измерителем ускорений или аналогичным устройством в транспортном средстве. В конкретных реализациях, скорость поворачивания двигателя умножается на константу k, чтобы делать возможным более быстрое время реакции. Например, если w - скорость вращения двигателя, основанная на скорости вращения рулевого колеса, скорость для поворачивания двигателя (в его новое положение) имеет значение: w * k. Типично, есть задержка между тем, когда изменяется угол поворота рулевого колеса, и когда двигатель фактически начинает поворачиваться. Если двигатель всегда поворачивается с такой же скоростью, как рулевое колесо, двигатель (и прикрепленная камера) всегда будет запаздывать. Константа k дает двигателю благоприятную возможность «догнать» или обогнать угол поворота рулевого колеса.
Фиг. 4 - блок-схема последовательности операций способа, изображающая вариант осуществления способа 400 для поворачивания двигателя на основании предварительно определенного диапазона ориентации. Сначала способ 400 определяет направление, количество градусов и скорость для поворачивания двигателя/камеры на 402, как обсуждено выше в отношении фиг. 3. Способ идентифицирует любые активные предварительно определенные диапазоны ориентации на 404. Диапазон ориентации определяет «рабочий диапазон» для вида, захватываемого камерой, установленной на двигатель. Например, диапазон ориентации может поддерживать камеру прицеливающейся главным образом вперед, к примеру, за переднее ветровое стекло легкового автомобиля. Этот диапазон ориентации может предоставлять камере возможность поворачиваться в пределах предварительно определенного диапазона углов, которые слегка отклоняются от направления вперед. Например, предварительно определенный диапазон углов может предоставлять камере возможность поворачиваться между 30 градусами слева от центра и 30 градусами справа от центра. Модуль управления поворачиванием управляет двигателем, чтобы поддерживать камеру в пределах этого предварительно определенного диапазона углов по мере того, как легковой автомобиль поворачивает. В некоторых вариантах осуществления, модуль управления поворачиванием предоставляет двигателю/камере возможностью поворачиваться в направлении границы диапазона (например, левой границы или правой границы диапазона) на основании: 1) ручного ввода от пользователя (например, с использованием приложения, выполняющегося на мобильном устройстве); 2) угла поворота рулевого колеса транспортного средства с динамически используемым смещением «d» (обсужденным в материалах настоящей заявки), которое уменьшается по мере того, как ориентация двигателя/камеры приближается к границе диапазона; и 3) поперечного ускорения или угловой скорости рыскания транспортного средства.
Если предварительно определенные диапазоны ориентации не определены на 406, модуль управления поворачиванием поворачивает двигатель на основании определенного направления, количества градусов и скорости на 408, как обсуждено выше в отношении фиг. 3.
Если по меньшей мере один предварительно определенный диапазон ориентации идентифицирован на 406, способ идентифицирует границы предварительно определенных диапазонов ориентации на 410. В некоторых вариантах осуществления, один из предварительно определенных диапазонов ориентации будет активным (например, предварительно выбран пользователем). На основании активного предварительно определенного диапазона ориентации, модуль управления поворачиванием начинает поворачивание двигателя на основании определенных направления, количества градусов и скорости на 412. Способ 400 определяет, достигнута ли граница предварительно определенного диапазона, на 414 (например, достижение 30 градусов слева от центра или 30 градусов справа от центра, как упомянуто выше). Если граница предварительно определенного диапазона не достигнута, модуль управления поворачиванием продолжает поворачивание двигателя на основании определенных направления, количества градусов и скорости. Однако, если граница предварительно определенного диапазона достигнута, модуль управления поворачиванием прекращает поворачивание двигателя на 416, тем самым, ограничивая поворачивание двигателя предварительно определенным диапазоном ориентации.
Фиг. 5A и 5B изображают многочисленные предварительно определенные диапазоны ориентации, связанные с транспортным средством. На фиг. 5A, транспортное средство 502 имеет предварительно определенный диапазон ориентации 504 для двигателя/камеры, установленных на транспортное средство (например, установленных на ветровое стекло или приборную панель). Предварительно определенный диапазон ориентации 504 ограничен слева на 506 и ограничен справа на 508. Таким образом, двигатель/камера в транспортном средстве 502 ограничены поворачиванием в пределах диапазона, определенного между границами 506 и 508. Как только достигнута граница 506 или 508, модуль управления поворачиванием не будет позволять двигателю/камере поворачиваться за такую границу независимо от принятых данных транспортного средства. Например, по мере того, как двигатель/камера поворачивается против часовой стрелки (как показано на фиг. 5A, глядя сверху на транспортное средство 502), если двигатель/камера достигает границы 506, модуль управления поворачиванием не будет позволять двигателю/камере поворачиваться сколько-нибудь дальше в направлении против часовой стрелки. Однако, двигатель/камера может поворачиваться по часовой стрелке (на основании принятых данных транспортного средства) до тех пор, пока не достигнута граница 508.
Фиг. 5B иллюстрирует еще одно транспортное средство 520, которое имеет два предварительно определенных диапазона ориентации 522 и 524 для двигателя/камеры, установленных на транспортное средство. Предварительно определенный диапазон ориентации 522 ограничен слева на 526 и ограничен справа на 528. Подобным образом, предварительно определенный диапазон ориентации 524 ограничен слева на 530 и ограничен справа на 532. Двигатель/камера в транспортном средстве 520 ограничены поворачиванием в пределах диапазона, определенного между границами 526 и 528, или поворачиванием в пределах диапазона, определенного между границами 530 и 532. Например, если двигатель/камера находится в пределах предварительно определенного диапазона ориентации 524 и поворачивается против часовой стрелки, когда двигатель/камера достигает границы 530, двигатель/камера автоматически поворачивается против часовой стрелки в следующий предварительно определенный диапазон ориентации (диапазон 522 в этом примере). Таким образом, двигатель/камера не останавливается в зоне, определенной между границами 528 и 530.
В некоторых вариантах осуществления, предварительно определенные диапазоны ориентации используются для ограничения ориентации двигателя/камеры, чтобы захватывать пейзаж за передним ветровым стеклом транспортного средства. В других ситуациях, пользователь может предпочесть смотреть на пейзаж за боковым окном транспортного средства и выбирает предварительно определенный диапазон ориентации, который поддерживает двигатель/камеру в пределах диапазона, который захватывает изображения за боковым окном (например, окном водительской двери или окном пассажирской двери).
Хотя настоящее изобретение описано в показателях определенных предпочтительных вариантов осуществления, другие варианты осуществления будут очевидны рядовым специалистам в данной области техники, при условии выгоды данного изобретения, в том числе, варианты осуществления, которые не предусматривают всех из выгод и признаков, изложенных выше в материалах настоящей заявки, которые также находятся в объеме этого изобретения. Должно быть понятно, что могут быть использованы другие варианты осуществления, не выходя из объема настоящего изобретения.