Виды редукторов
Точное техническое определение редуктора — устройство для преобразования механической энергии в разрезе параметров. Он имеет характеристику входных и выходных показателей. На практике редуктор может не только менять параметры кинетики и уровни передачи энергии, но и изменять направление вращения и следования валов.
Сегодня редуктор рассматривается в разрезе приспособления, которое используется для изменения частоты вращения вала относительно показателей приводного механизма. При этом параллельно может рассматриваться возможность увеличения крутящего момента или же — обеспечения крайне малого числа оборотов при очень серьезных усилиях. По конструкции редукторы делятся на:
Чтобы понять, насколько тот или иной тип редуктора подойдет для решения поставленных перед ним задач, стоит подробно остановиться на особенностях их работы и условий использования.
Цилиндрический редуктор относится к самому распространенному типу преобразовательных механизмов. Он обладает главной характеристикой: входной и выходной валы строго параллельны, но не обязательно соосны.
К достоинствам цилиндрического редуктора относятся:
- высокий КПД, потери энергии минимальны;
- не обладает самоторможением, всегда есть возможность прокрутить выходной вал даже при приложении малого усилия;
- может транспортировать высокую мощность;
- обладает кинематической точностью;
- практически не нагреваются, не требуя особых условий охлаждения;
- выпускаются изделия с разным передаточным числом и ступенями преобразования.
Благодаря присутствию на рынке большого ассортимента изделий, нетрудно подобрать цилиндрический редуктор с нужным передаточным числом для применения в том или ином механизме.
Основа конструкции цилиндрического редуктора — зубчатые колеса в форме цилиндров. Соосность (Расположение осей деталей машины (узлов, агрегатов и т. п.) на одной линии)входного и выходного валов зависят от числа ступеней передачи. В самом простом варианте внутри корпуса находятся всего два цилиндрических зубчатых колеса. В этом случае смещение выходного вала от оси входного определяется как сумма радиусов колес по внешнему контуру за вычетом глубины зубьев.
Соосность входного и выходного валов достигается применением нескольких ступеней преобразования. В этом случае внутри корпуса расположено нечетное количество цилиндрических зубчатых колес, некоторые из которых являются вспомогательными. Они могут выполнять роль как простого передаточного механизма без преобразования, так и иметь передаточный коэффициент для снижения нагрузки на зубья и повышения срока службы механизма.
Цилиндрические редукторы выпускаются в закрытых корпусах, большинство из них не требует специального обслуживания. Область применения этих устройств чрезвычайно широка. Они гарантируют плавную передачу хода, но не позволяют изменить направление вала.
Цилиндрические редукторы могут располагаться вертикально или горизонтально, расчет нагрузки и оборотов прост: высокий КПД позволяет применять указанное производителем передаточное число в арифметических операциях. Главное достоинство редуктора — преобразование энергии привода практически без искажений и потерь.
Работа конических и коническо-цилиндрических редукторов имеет те же особенности и основные характеристики, что и у цилиндрических устройств. Главное отличие — в форме зубчатых колес внутри корпуса.
Как следует из названия, у конического редуктора все шестерни конической формы, у коническо-цилиндрического в конструкции присутствуют элементы обоих типов.
Редукторы этих классов имеют свои особенности:
- способны изменять направление валов, конический редуктор с одной ступенью преобразования обеспечивает поворот на 90 градусов;
- усилие при работе шестерней направлено под углом к оси вала. Поэтому редукторы конического и коническо-цилиндрического класса должны отдельно закрепляться для избежания бокового давления на ось привода. Это может несколько осложнить конструирование механизмов с их участием.
Рассматриваемые типы редукторов применяются только в случаях, когда без изменения направления вала нельзя обойтись. Данные устройства дороги, что легко объясняется повышенной сложностью изготовления зубчатых колес и необходимостью гарантировать точность сборки редуктора в целом.
Но в остальном — устройства работают практически бесшумно, предлагаются продукты с разным передаточным числом, им не требуется специального обслуживания, а срок эксплуатации очень велик. Правила расчета выходной частоты вращения вала и крутящего момента — такие же, как для цилиндрических редукторов.
Червячные редукторы: общие сведения
В основе механики работы червячного редуктора лежит идея передачи крутящего момента с винта особой резьбы на зубчатое колесо.
При этом в ходе работы механизма образуются значительные показатели силы трения между поверхностями червяка и зуба приводного механизма вала.
В результате устройство выделяет большое количества тепла, требует особых условий охлаждения, имеет низкую наработку на отказ.
С течением времени из-за разрушения элементов привода возможно возникновения люфтов и увеличение выделения тепла.
К достоинствам червячного редуктора относятся:
- плавность хода выходного вала;
- большие передаточные коэффициенты;
- для выполнения поставленных перед некоторыми механизмами задач полезно свойство самоторможения редуктора: вал невозможно прокрутить при отключенном приводе.
Есть у червячного редуктора весомый список недостатков. Кроме уже упомянутых (значительное выделение тепла, низкий срок службы), к ним относятся:
- сниженный коэффициент полезного действия, который падает в ходе эксплуатации из-за износа механики;
- необходима точная регулировка и настройка.
Червячный редуктор требует отдельного крепления при установке для гарантии отсутствия паразитных разнонаправленных сил, действующих на выходной и входной валы. Если это условие не соблюдено — срок службы устройства может быть снижен по сравнению с задекларированным производителем.
Где применяют червячные редукторы
Червячные редукторы чаще всего используются в механизмах, где требуется передача незначительной мощности при большом коэффициенте преобразования. Например, устройства со слабыми высокооборотистыми двигателями, обеспечивающие малое количество ходов или оборотов исполнительного органа.
Множество механизмов могут требовать низкой угловой скорости поворота выходного вала. В этом случае червячный редуктор будет идеален. Он гарантирует значительный крутящий момент на выходе, а благодаря огромному передаточному числу — количество оборотов на выходе весьма мало. Это могут быть приводы ворот, различные подъемники рычажной конструкции.
Для решения некоторых задач может быть полезным особенность червячных редукторов, которая состоит в изменении направления выходного вала относительно входного на 90 градусов. Этот показатель никогда не изменяется.
Отдельно стоит отметить комбинированные зубчатые редукторы. В них осуществляется двойное преобразование: предварительное с помощью цилиндрической схемы и окончательное — червячной передачей. Этим достигается еще больший коэффициент преобразования для самых низких показателей угловой скорости выходного вала.
Планетарный редуктор: общие сведения
Конструкция планетарного редуктора позволяет ему работать в двух режимах: в роли жесткого преобразователя механической энергии и в модели суммирующего механизма, который отбирает крутящий момент от двух приводов. К достоинствам планетарного редуктора относятся:
- компактность;
- универсальность применения выходного крутящего момента, как для привода валов, так и для передачи вращения шестерням;
- малый вес;
- высокий коэффициент полезного действия.
К недостатку планетарного редуктора относится его высокая стоимость. Это обусловлено как большим количеством деталей в составе механизма преобразования, так и требованиями высокой точности их изготовления.
Как работает планетарный редуктор
Передача вращения в планетарном редукторе производится от центральной «солнечной» шестерни, которую вращает привод, к внешнему круговому элементу — эпициклу. Коэффициент преобразования зависит от соотношения числа зубьев на солнечной шестерне и планетарных зубчатых колесах.
Схема редуктора представлена на рисунке:
Когда водило, обозначенное зеленым, жестко зафиксировано — планетарный редуктор работает как простой преобразователь механической энергии одного привода. Второй вариант использования заключается во вращении солнечной шестерни и водила от разных источников. При этом энергия суммируется, а расчет итоговой мощности на эпицикле достаточно сложен.
Благодаря малым размерам и плавности хода, планетарный редуктор рекомендован для точных механизмов. На массовом рынке предлагается широкий спектр изделий. Доступны редукторы с разным коэффициентом преобразования, которые могут передавать большую мощность, снижая угловую скорость выходного устройства. Это может быть крайне полезным в металлообрабатывающих станках.
Хорошие результаты показывают планетарные редукторы в различных подъемниках и транспортерах. Они способны обеспечить плавное изменение мощности при незначительных бросках нагрузки на приводе. Для обеспечения высокой мощности транспортеров можно применять дополнительные приводы с планетарными редукторами в режиме суммирования, которые смогут обеспечить создание длинных высоконагруженных транспортеров или подъемников.
Заключение
Полезность того или иного редуктора для создания конкретного устройства всегда оценивается индивидуально. Цилиндрические — способны удовлетворить большинство потребностей. Однако отраслей, где крайне полезными будут червячные или планетарные редукторы — также достаточно много.
устройство, принцип работы, виды, назначение
Редуктор – механизм, изменяющий крутящий момент и мощность двигателя, присутствует практически в любой машине и станке. Он является частью трансмиссии автомобиля и регулирует с высокой точностью перемещение в точных приборах. Что такое редуктор с технической точки зрения? Это одно или несколько зубчатых зацеплений, взаимодействующих между собой и понижающих количество оборотов двигателя до приемлемой скорости вращения исполняющего узла. Вместо ведущей шестерни может быть червяк.
Устройство и принцип работы
Редуктор без дополнений газовый или гидравлический, подразумевает механическое устройство для изменения угловой скорости и крутящего момента. Он работает по принципу Золотого правила, когда передаваемая вращением мощность практически не изменяется, уменьшается на КПД.
Устройство
Простейшее устройство редуктора, это зацепление из шестерни и зубчатого колеса. Крутящий момент передается через непосредственный контакт зубьев – элементов детали. Они движутся с одинаковой линейной скоростью, но разной угловой. Количество вращений шестерни и колеса за единицу времени разное, зависит от диаметров деталей и количества зубьев.
Шестерни и колеса неподвижно закреплены на валах или изготовлены совместно с ними. В корпусе может быть от одной до нескольких пар зубчатых зацеплений. На сборочном чертеже редуктора хорошо видно его устройство и составные части:
- корпус;
- крышка корпуса;
- пары в зацеплении;
- валы;
- подшипники;
- уплотнительные кольца;
- крышки.
Корпус в самом низу имеет отверстие для слива масла и приспособление контроля уровня смазочных материалов, глазок или щуп. Разъем с крышкой совпадает с плоскостью расположения осей.
На кинематической схеме редуктора схематически указаны зубчатые соединения, расположений валов и направление вращения. Также показан тип зуба, прямой или наклонный. По кинематической схеме можно определить количество ступеней, передаточное число и другие характеристики, как работает данный редуктор.
Принцип действия
Принцип работы механического редуктора основан на передаче вращательного момента от одного вала другому посредством взаимодействия зубчатых деталей, неподвижно закрепленных на них. Линейная скорость зубьев одинаковая. Она не может быть разной, поскольку контакт жесткий.
Принципом действия редуктора является давление зуба на поверхность аналогичного со смежной детали и передача при этом усилия, двигающего ведомое колесо. В результате скорость вращения уменьшается. На выходном валу создается усилие, которое способно привести в движение исполняющий механизм.
Главная пара всегда первая, быстроходная шестерня или червяк, соединенный с двигателем и соответствующее ему колесо. По ее типу определяется и весь узел. Количество ступеней равно количеству зацеплений, имеющих передаточное число больше 1.
Кроме рабочих шестерен могут использоваться паразитки – шестерни, которые не изменяют крутящий момент, только направление вращения колеса и соответственно вала, на котором оно расположено.
Маркировка
В условном обозначении редуктора имеется ряд цифр и букв, указывающих на его параметры и тип. Первым стоит указание на количество ступеней и вид зубчатого зацепления:
- цилиндрическое – Ц;
- червячное – Ч;
- коническое – К;
- глобоидное – Г;
- волновые – В;
- планетарное – П.
Комбинированные модели обозначаются несколькими буквами, начиная с первой пары:
- цилиндрически-червячные – ЦЧ;
- червячно-цилиндрические – ЧЦ;
- конически-цилиндрические – КЦ.
Количество передач данного вида указывается цифрой перед буквой.
Горизонтальное расположение считается нормой и не имеет своего обозначения. Для вертикального узла после обозначения типа передач ставится буква В. Б – означает быстроходную модель. За ним ставится условное числовое обозначение варианта сборки.
Далее указывается расстояние между осями ведущего и выходного вала, передаточное число цифрами и форма выходного вала буквенным обозначением, например, Ц – цилиндрический хвостовик, К – конический.
В маркировке может присутствовать указание на климатическое исполнение, например, для тропиков, северных районов, по какому госту выполнено.
Например: 1Ц2У-250-31,5-22-М-У2. Двухступенчатый цилиндрический с горизонтальным расположением. Межцентровое расстояние валов тихоходной ступени 250 мм, передаточное число 31,5. Вариант сборки узла 22, хвостовик по типу муфты, климатическое исполнение соответствует ГОСТ 15150-69.
Скачать ГОСТ 15150-69
Электрический привод – мотор и передаточный узел в одном корпусе, имеет несколько отличающуюся маркировку. Вначале стоит буквенное обозначение марки сборного привода, указывается скорость вращения выходного колеса, поскольку она постоянна, соединена с одним электродвигателем.
Технические характеристики
Редуктора отличаются внешне по размерам и форме. Внутреннее строение разнообразное. Объединяет их всех перечень технических характеристик, по которым они подбираются на различные машины и станки. К основным параметрам редуктора относятся:
- передаточное число;
- передаточное отношение;
- значение крутящего момента редуктора;
- расположение;
- количество ступеней;
- крутящий момент.
Передаточное число берется общее, всех передач, и одновременно указывается таблица передаточных чисел, если узел имеет 2 и более ступени. По нему подбирают узел, который преобразует вращение электродвигателя или мотора с нужное количество оборотов.
При этом важно знать величину крутящего момента на выходном валу редуктора, чтобы определить, будет ли достаточной мощность, чтобы привести в движение агрегат.
Передаточное число
Основная характеристика зубчатого зацепления, по которой определяются все остальные параметры. Показывает, на сколько оборотов меньше делает колесо относительно шестерни. Формула передаточного отношения:
U = Z2/Z1;
где U – передаточное число;
Z1 число зубьев шестерни;
Z2 число зубьев зубчатого колеса.
Модуль зубьев шестерни и колеса одинаковый. Их количество напрямую зависит от диаметра. Поэтому можно использовать формулу:
U = D2/D1;
Где D2 и D1 диаметры колеса и шестерни соответственно.
Расчет общего передаточного момента определяется как произведение передаточных чисел всех пар:
Uр = U1 × U2 × … × Un;
Где Uр передаточное число;
U1, U2, Un передаточные числа зубчатых пар.
При расчете передаточного числа берется отношение количества зубьев колеса и заходов червяка.
В цепных передачах расчет передаточного числа делается аналогично, по количеству зубьев на звездочках и по диаметрам деталей.
При определении передаточного числа ременной пары количество зубьев заменяется диаметрами шкивов и все умножается на коэффициент скольжения. В отличие от зубчатой передачи, линейная скорость движения крайних точек на шкивах не равна друг другу. Зацепление не жесткое, ремень проскальзывает. КПД передачи ниже, чем у зубчатой и цепной передачи.
Передаточное отношение
При проектировании нового узла с заранее заданными характеристиками, за основу берется мощность будущего редуктора. Она определяется по величине крутящего момента:
где U12 – передаточное отношение;
W1 и W2 – угловые скорости;
n1 и n2 – частота вращения.
Знак «–» указывает на обратное направление вращения колеса и вала, на котором оно находится. При нечетном количестве передач ведомое колесо крутится в противоположном направлении по отношению к ведущему, навстречу ему. При четном количестве зацеплений конических колес вращение обоих валов происходит в одном направлении. Заставить его крутится в нужную сторону можно установкой промежуточной детали – паразитки. У нее количество зубьев как у шестерни. Паразитка изменяет только направление вращения. Все остальные характеристики остаются прежними.
Крутящий момент
Определение крутящего момента на валу необходимо, оно позволяет узнать мощность на выходе редуктора, величины связаны прямо пропорциональным соотношением.
Крутящий момент входного двигателя на входе, умножается на передаточное число. Для получения более точного фактического значения надо умножить на значение КПД. Коэффициент зависит от количества ступеней и типа зацепления. Для прямозубой конической пары он равен 98%.
Назначение механизма
Редуктором называют узел, который изменяет мощность. Это может быть давление газа и жидкости в газовых баллонах, трубопроводах и на распределительных подстанциях. Механические редукторы изменяют число оборотов и угловую скорость.
Для чего нужен в механизме и машине зубчатый передаточный механизм. Он снижает угловую скорость двигателя, увеличивая при этом в столько же раз крутящий момент – силу, с которой может воздействовать выходной вал на исполняющий механизм.
Скорость вращения электродвигателя может достигать 1500 об/мин. Для работы станка оборудования она не подходит. При этом, если к шкиву мотора напрямую прикрепить груз, он не сможет сдвинуть его с места.
Функции узла, уменьшить скорость вращения в десятки раз и настолько же увеличить крутящий момент – усилие, с которым машина будет совершать работу.
Виды редукторов
Редуктор, это механизм, передающий крутящий момент. Простейшими механическими узлами, передающими крутящий момент, считаются ременная и цепная передачи. Они передают вращение с одного детали на другую и при этом изменяют угловую скорость.
Наибольшая группа редукторов, которые широко используются во всех механизмах, от кофемолки до доменных печей, механические зубчатые редукторы. Они разделяются на группы по нескольким параметрам:
- типу зубчатого зацепления;
- количеству передач;
- способу монтажа;
- пространственное положение осей и зубчатых соединений.
Обычно ведущий вал редуктора быстроходный. Он жестко соединен с двигателем и вращается с такой же скоростью, до 1500 об/мин. При обратном отношении, когда ведущим является колесо и скорость вращения на выходе возрастает, а крутящий момент падает, узел называют понижающим.
По типу зубчатого зацепления и форме шестерни, они делятся:
- цилиндрические;
- конические;
- червячные;
- планетарные;
- комбинированные;
- волновые.
Комбинированные модели могут иметь различные типу зубчатых зацеплений.
Цилиндрические
Наибольшее количество выпускается цилиндрических редукторов. Рабочая поверхность колеса и шестерни имеет форму цилиндра. Модели отличаются высоким КПД, простотой исполнения и большим разнообразием деталей. Одноступенчатые узлы получили название передаточного редуктора. Он компактный, понижает скорость вращения и одновременно передает крутящий момент.
По форме зуба цилиндрические модели делятся:
- прямозубые;
- косозубые;
- шевронные.
По кинематической схеме они бывают прямолинейные и разветвленные.
Прямой зуб имеет закругленную поверхность, способствующую максимально возможной площади контакта. При зацеплении зубья контактируют по всей длине. Трение сводится к минимуму. КПД прямозубого зацепления наиболее высокое, 99%.
К достоинствам прямозубых передач относятся минимальная нагрузка на подшипники, малое трение, механизм не греется.
Недостаток в сильном шуме во время работы и малой мощности. Чтобы предать большое усилие, колеса надо делать широкими, крупногабаритными.
Косой зуб расположен под углом. Площадь контакта у него больше при одинаковой ширине обода колеса. Зубья заходят в зацепление постепенно. Работает косозубая пара тихо, плавно и способна выдержать большие нагрузки.
Площадь трения по эвольвенте больше, детали греются. КПД косозубого зацепления 98% и ниже. Изготовление деталей с косым зубом сложнее, особенно фрезеровка зубьев. Требуется большая точность при настройке режущего инструмента. Наклонное положение зуба создает дополнительные осевые нагрузки на подшипники и сокращает срок их работы.
Для компенсации отрицательных осевых усилий косозубых передач, созданы шевронные. Они представляют два колеса на одном валу с наклоном зубьев в противоположную сторону. Таким образом еще больше увеличивается мощность.
Работают шевронные зацепления тихо. Недостаток в сложной и длительной технологии нарезания зубьев.
Количество передач может быть любое. Расположение валов параллельное, горизонтальное и вертикальное в одной плоскости. При большом числе зубчатых зацеплений в одном корпусе, возможно двурядное расположение валов.
Цилиндрические модели широко применяются во всех областях. От бытовой техники, кофемолок, дрелей, до металлургической и горнорудной промышленности. На каждом станке стоит один или несколько редукторов. В особо тяжелых условиях используют шевронные передачи.
Конические
Шестерня и колесо имеют коническую поверхность. Валы расположены под углом. Зуб на шестерне прямой и радиальный. Часто конические передачи используются в комбинированных или понижающих узлах. Направление вращения возможно в любую сторону. В качестве ведущего может выступать колесо.
Сколько передач в коническом передаточном механизме, зависит от его назначения. Обычно одна. Наиболее известный пример косозубого зацепления – дифференциал заднего моста, понижающий крутящий момент узел. От одного колеса вращается синхронно в одном направлении 2 шестерни.
Червячный
Вместо ведущей шестерни в зубчатом зацеплении стоит червяк с нарезанной резьбой. Нитей бывает 1, 2, 4. Другого количества заходов не делают. Оси валов расположены перпендикулярно в разных плоскостях.
Червяк при вращении взаимодействует с несколькими зубьями колеса. От сильного трения под углом, возникает тормозящий момент. Он не позволяет колесу провернуться и сдвинуть червяк. Самоторможении используют в грузоподъемных механизмах. Подвешенный груз не сможет пойти вниз. Червячная передача может перемещать колесо и связанный с ним механизм с большой точностью. Это используют в приборах и станках для точной настройки положения инструмента.
Червячные редукторы создают с одной и двумя передачами. Часто делают комбинированные с коническими зацеплениями.
У червячного редуктора тихий и плавный ход, самое большое передаточное число одной пары до 80 единиц.
Недостаток в низком КПД и сильном нагреве во время работы. необходимо делать систему охлаждения.
Планетарный
Планетарные модели конструктивно отличаются от всех других. У них колесо неподвижно зафиксировано в корпусе. В зацеплении с ним 4 сателлита – зубчатые колеса, которые синхронно вращаются от центральной шестерни.
Водило, соединенное с выходным валом, вращается вокруг солнечной шестерни. Валы сателлитов закреплены в нем через подшипники.
Сложное исполнение планетарного редуктора компенсируется его высокой мощностью, компактными размерами и тихим ходом. Планетарные модели используются для работы в шахтах, металлургии, горнорудной промышленности.
Комбинированные
Редукторы, в которых установлены передачи разного типа, называются комбинированными. Наиболее часто соединяют в одном корпусе цилиндрические пары с червячными или коническими.
Мотор-редуктор – собранные в одном корпусе двигатель и передаточный узел. Привод обычно изготавливается с коническими или червячными парами. Количество передач одна и две.
В волновых моделях для вращения применяют колебания расположенной внутри колеса шестерни. Широкого распространения модель пока не получила.
Рекомендации по выбору
Как выбирать редуктор вместо сломавшегося, на имеющуюся технику и при создании механизмов самостоятельно. Основным является мощность на выходном валу. Она рассчитывается на основании оборотов двигателя по передаточному числу.
Следует обратить на расположение валов, оно в цилиндрических моделях может быть в одну сторону.
Крепление осуществляется с помощью фланца непосредственно к валу двигателя и с помощью отверстий в подошве устанавливается на платформу.
В маркировке указано межцентровое расстояние между валами. Этот размер имеет конструктивное значение при установке узла и соединения его с двигателем и валом рабочего механизма.
Следует посмотреть, какая пара в редукторе первая, ее передаточное число, зацепление. Выбор редуктора включает в себя и расположение валов в пространстве. Они могут располагаться под прямым углом и быть в разных плоскостях. Тип подшипников указывается в технической документации. Там же таблица сроков эксплуатации разных узлов.
При проектировании машины, подбор червячного редуктора выполняется по мощности и расположении зацепления. При нижнем зацеплении пара хорошо смазывается, не требует дополнительного охлаждения и способна работать длительно время. Следует обратить внимание на рабочий режим. Узел не всегда способен работать по несколько часов непрерывно. Червячное соединение быстро перегревается.
Распространенные неисправности
Поломки редуктора можно избежать при правильной его эксплуатации и регулярном уходе. Следует внимательно изучить паспорт. В нем указаны виды технического обслуживания и их периодичность. Надо регулярно менять масло, постоянно доливать его. Соблюдения режима работы позволит сохранить агрегат целым.
Основная неисправность редуктора связана с его перегревом. Это происходит при отсутствии смазки и использовании масел других марок. В противном случае агрегат перегревается, зубчатое зацепление может заклинить.
Подшипники имеют свой запас прочности. Их период эксплуатации указан в паспорте. Если вовремя не поменять на новые, узлы начинают рассыпаться. Шарики выпадут, и вал начнет вращаться с большим усилием, рывками.
Между корпусом и крышками: верхней и боковой, по плоскости разъема, при сборке закладывается герметик. Он не позволяет маслу вытекать наружу. Если его вовремя не менять, жидкость потечет со всех разъемов.
Перегрузки, резкое включение приводит к разрушению зуба. Когда передаточный механизм не соответствует двигателю, он долго не выдержит.
Все о редукторах. Справочная информация
Классификация, основные параметры редукторов
Цилиндрические редукторы
Червячные редукторы
Планетарные редукторы
Конические редукторы
Классификация редукторов в зависимости от вида передач и числа ступеней
Конструкция и назначение редуктора
Особенности редукторов по виду механических передач
Количество ступеней редуктора
Входные и выходные валы редукторов
Срок службы редуктора
Устройство редуктора
Монтажное исполнение
Как подобрать редуктор? Простые правила и примеры расчета
Передаточное отношение и как его определить?
Редукторы (латинского слова reductor) получили широкое распространение во всех отраслях промышленного и аграрного хозяйства, поэтому их производство с каждым годом увеличивается, появляются новые модификации, совершенствуются уже существующие модели.
Редуктор служит для снижения частоты вращения тихоходного вала и увеличения усилия на выходном валу. Редуктор может иметь одну или несколько ступеней, цель которых увеличение передаточного отношения. По типу механической передачи редукторы могут быть червячными, коническими, планетарными или цилиндрическими. Конструктивно редуктор выполнен как отдельное изделие, работающее в паре с электродвигателем и установленное с ним на одной раме.
Промышленностью сегодня выпускаются редукторы общего и специального назначения.
Редукторы общего назначения могут применяться во многих случаях и отвечают общим требованиям. Специальные же редукторы имеют нестандартные характеристики подходящие под определенные требования.
Классификация, основные параметры редукторов
В зависимости от типа зубчатой передачи редукторы бывают цилиндрические, конические, волновые, планетарные, глобоидные и червячные. Широко применяются комбинированные редукторы, состоящие из нескольких совмещенных в одном корпусе типов передач (цилиндро-конические, цилиндро-червячные и т.д.).
Конструктивно редукторы могут передавать вращение между перекрещивающимися, пересекающимися и параллельными валами.
Так, например цилиндрические редукторы позволяют передать вращение между параллельными валами, конические — между пересекающимися, а червячные — между пересекающимися валами.
Общее передаточное число может достигать до нескольких десятков тысяч, и зависит от количества ступеней в редукторе. Широкое применение нашли редукторы, состоящие из одной, двух или трех ступеней, при чем они могут, как описывалось выше, совмещать разные типы зубчатых передач.
Ниже представлены наиболее популярные виды редукторов, серийно выпускаемые промышленностью.
Цилиндрические редукторы
Цилиндрические редукторы являются самыми популярными в машиностроении. Они позволяют передавать достаточно большие мощности, при этом КПД достигает 95%. Вращение передается между параллельными или соосными валами. Передаваемая мощность зависит от типоразмера редуктора. В цилиндрических редукторах применяются передачи, состоящие из прямозубых, косозубых или шевронных зубчатых колес. Количество цилиндрических передач напрямую влияет на передаточное отношение. Например, одноступенчатый редуктор может иметь передаточное число 1,5 до 10, две ступени — от 10 до 60, а три ступени — от 60 до 400.
Кинематические схемы наиболее распространенных видов цилиндрических редукторов представлены на рисунке ниже:
А) — Простой одноступенчатый цилиндрический редуктор
Б) – Двухступенчатый редуктор цилиндрический с несимметричным расположением зубчатых колес
В) – Трехступенчатый цилиндрический редуктор, входной вал быстроходной передачи изготовлен с двумя шестернями
Г) – Соосный цилиндрический редуктор
Д) — Соосный цилиндрический редуктор с симметричным расположением опор относительно тихоходной передачи
Е) — Соосный цилиндрический редуктор с шевронной быстроходной передачей
Ж) — Соосный цилиндрический редуктор с раздвоенной передачей
З) — Соосный цилиндрический редуктор с посаженными на быстроходный вал двумя косозубыми шестернями с противоположенным наклоном зубьев
И) – Трехступенчатый цилиндрический редуктор с раздвоенной быстроходной и тихоходной передачей
Червячные редукторы
Червячные редукторы получили большую популярность в виду своей простоты и достаточно низкой стоимости. Из всех видов червячных редукторов наиболее распространены редукторы с цилиндрическими или глобоидными червяками. Как и многие другие типы редукторов червячные могут состоять из одной или нескольких ступеней. На одноступенчатом редукторе передаточное отношение может быть в пределах 5-100, а на двух ступенях может достигать 10000. Основными достоинствами редукторов червячного типа являются компактные размеры, плавность хода и самоторможение. Из недостатков можно отметить не очень высокий КПД и ограниченная нагружаемая способность. Основными элементами являются зубчатое колесо и цилиндрический червяк. Цилиндрический червяк представляет собой винт с нанесенной на его поверхности резьбой определенного профиля. Число заходов зависит от передаточного отношения, и может составлять от 1 до 4. Вторым основным элементом редуктора является червячное колесо. Оно представляет собой зубчатое колесо из сплава бронзы, количество зубьев также зависит от передаточного отношения и может составлять 26-100.
В ниже приведенной таблице представлена зависимость передаточного отношения от количества зубов колеса и заходов винта.
Передаточное отношение | Число заходов червяка | Число зубов колеса |
7-8 | 4 | 28-32 |
9-13 | 3-4 | 27-52 |
14-24 | 2-3 | 28-72 |
15-27 | 2-3 | 50-81 |
28-40 | 1-2 | 28-80 |
40 | 1 | 40 |
Кинематические схемы одноступенчатых червячных редукторов представлены ниже:
А) Редуктор с нижним расположением червяка
Б) Редуктор с верхним расположением червяка
В) Редуктор с боковым расположением червяка (ось червяка расположена горизонтально)
Г) Редуктор с боковым расположением червяка (ось червяка расположена вертикально)
Редукторы червячные двухступенчатые позволяют получить моменты в диапазоне 100 – 2800Нм. Конструкция представляет собой жесткую скрутку двух редукторов. Между собой редукторы соединены с помощью фланца. Цилиндрический вал первой ступени установлен в полый вал второй ступени.
Вариант расположения червячных пар представлен на рисунке ниже:
Расположение входного и выходного вала зависит от варианта сборки. Существуют следующие сборки: 11, 12, 13, 16, 21, 22, 23, 26.
Планетарные редукторы
Планетарные редукторы нашли широкое применение в тяжелом машиностроении, так как обладают рядом преимуществ перед редукторами другого типа. На редукторах планетарного типа можно получить достаточно большие передаточные числа, при этом габариты редуктора будут намного меньше чем у червячного или цилиндрического редуктора. Конструкция редуктора представляет собой планетарный механизм. Основными элементами редуктора являются сателлиты, солнечная шестерня, кольцевая шестерня и водило.
Внешний вид устройства планетарного редуктора представлен ниже:
А) сателлиты
Б) солнечная шестерня
В) водило
Г) кольцевая шестерня
Кольцевая шестерня планетарного редуктора находится в неподвижном состоянии, Вращение от входного вала передается на солнечную шестерню находящеюся в зацеплении со всеми сателлитами. Сателлиты вращаются внутри неподвижной кольцевой шестерни передавая энергию вращения на водило, а далее на выходной вал редуктора. Планетарный механизм может быть одно-, двух- и трехступенчатым, передаточное отношение зависит от количества зубьев на каждой шестерне.
Свое название планетарный редуктор получил благодаря тому, что зубчатые колеса вращаются подобно планетам солнечной системы. Планетарные редукторы могут быть одно-, двух- и трехступенчатыми. Передаточное отношение может быть в пределах 6 – 450. Редукторы планетарного типа обладают высоким КПД, и позволяют передавать большие мощности без потерь на нагрев. Для удобства монтажа планетарные редукторы выпускаются на лапах или на опорном фланце, а также возможен комбинированный вариант.
В настоящий момент на Российском рынке приводной техники пользуются популярностью редукторы серии 3МП и МПО.
Конические и цилиндро-конические редукторы
Конические и цилиндро-конические редукторы передают момент между пересекающимися или скрещивающимися валами. В редукторах применяются шестерни в виде конуса с прямыми или косыми зубами. Конические редукторы имеют большую плавность зацепления, что позволяет им выдерживать большие нагрузки. Редукторы могут быть одно-, двух- и трехступенчатыми. Большое распространение получили цилиндро-конические редукторы, где общее передаточное отношение может достигать 315. Быстроходный и тихоходный валы редуктора могут располагаться горизонтально и вертикально. По типу кинематической схемы конические и цилиндро-конические редукторы могут быть развернутые или соосные.
На рисунке ниже представлены кинематические схемы конических редукторов:
А) Реверсивный конический редуктор. Смена направления вращения достигается установкой зубчатого колеса с противоположенной стороны конической шестерни.
Б) Реверсивный конический редуктор. Конические шестерни вращаются в разных направлениях. Подключение тихоходного вала к одной из конических шестеренок происходит за счет кулачковой муфты.
В) Двухступенчатый коническо-цилиндрический редуктор. Быстроходный и тихоходный валы находятся под прямым углом в одной плоскости.
Г) Двухступенчатый коническо-цилиндрический редуктор. Входной и выходные валы перекрещиваются и лежат в разных плоскостях.
Д) Трехступенчатый коническо-цилиндрический редуктор. Быстроходный и тихоходный валы находятся под прямым углом в одной плоскости.
Е) Трехступенчатый коническо-цилиндрический редуктор. Промежуточная и тихоходная цилиндрическая передача собраны по соосной схеме.
Конические редукторы широко используются в изделиях, где требуются передать высокий момент под прямым углом. В отличие от червячных редукторов, конические редукторы не имеют быстро изнашиваемого бронзового колеса, что позволяет работать им в тяжелых условиях длительное время. Также важным отличием является обратимость, возможность передавать вращение от тихоходного вала к быстроходному валу. Обратимость позволяет разгрузить редукторный механизм в отличие от червячного редуктора, что позволяет использовать конический редуктор в установках с высокой инерцией.
Классификация редукторов в зависимости от вида передач и числа ступеней:
Тип редуктора | Количество ступеней | Тип механической передачи | Расположение тихоходного и быстроходного валов |
Цилиндрический | Одна ступень | Одна или несколько цилиндрических передач | Параллельное |
Две ступени; три ступени | Параллельное или соосное | ||
Четыре ступени | Параллельное | ||
Конический | Одна ступень | Одна коническая передача | Пересекающееся |
Коническо-цилиндрический | Две ступени; три ступени; четыре ступени | Одна коническая передача и одна или несколько цилиндрических передач | Пересекающееся или скрещивающееся |
Червячный | Одна ступень; две ступени | Одна или две червячные передачи | Скрещивающееся |
Параллельное | |||
Цилиндрическо-червячный или червячно-цилиндрический | Две ступени; три ступени | Одна или две цилиндрические передачи и одна червячная передача | Скрещивающееся |
Планетарный | Одна ступень; две ступени; три ступени | Каждая ступень состоит из двух центральных зубчатых колес и сателлитов | Соосное |
Цилиндрическо-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной или нескольких цилиндрических и планетарных передач | Параллельное или соосное |
Коническо-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной конической и планетарных передач | Пересекающееся |
Червячно-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной конической и планетарных передач | Скрещивающееся |
Волновой | Одна ступень | Одна волновая передача | Соосное |
Конструкция и назначение редуктора
Механизм, служащий для понижения угловой скорости и одновременно повышающий крутящий момент, принято называть редуктором. Энергия вращения подводится на входной вал редуктора, далее в зависимости от передаточного отношения на выходном валу получаем пониженную частоту и увеличенный момент.
В состав редуктора в зависимости от типа механической передачи обычно входят зубчатые или червячные пары, центрирующие подшипники, валы, различные уплотнения, сальники и т.д. Элементы редуктора помещаются в корпус, состоящий из двух частей – основания и крышки. Рабочие механизмы редуктора при работе непрерывно смазываются маслом путем разбрызгивания, а в отдельных случаях применяется принудительный насос, помещенный внутрь редуктора.
Существует огромное количество различных типов редукторов, но наибольшую популярность получили цилиндрические, планетарные, конические и червячные редукторы. Каждый тип редуктора имеет свои определенные преимущества и недостатки, которые следует учитывать при конструировании оборудования. Основными же критериями для подбора редуктора являются определение необходимой мощности или момента нагрузки, коэффициента редукции (передаточного отношения), а также монтажного расположения источника вращения и рабочего механизма.
Особенности редукторов по виду механических передач
Мировой промышленностью выпускается огромное количество редукторов и редукторных механизмов различающихся по типу передачи, вариантам сборки и т.д. Рассмотрим основные типы механических передач, их особенности и преимущества.
Цилиндрическая передача – является самой надежной и долговечной из всех видов зубчатых передач. Данная передача применяется в редукторах, где требуется высокая надежность и высокий КПД. Цилиндрические передачи обычно состоят из прямозубых, косозубых или шевронных зубчатых колёс.
а) Прямозубая цилиндрическая передача
б) Косозубая цилиндрическая передача
в) Шевронная цилиндрическая передача
г) Цилиндрическая передача с внутренним зацеплением
Конические передачи – обладают всеми преимуществами цилиндрических зубчатых передач и применяются в случае перекрещивания входного и выходного валов.
а) Коническая зубчатая передача с прямым зубом
б) Коническая зубчатая передача с косым зубом
в) Коническая зубчатая передача с криволинейным зубом
г) Коническая гипоидная передача
Червячная передача – позволяет передавать кинетическую энергию между пересекающимися в одной плоскости валами. Основными преимуществами данной передачи является высокий показатель передаточного отношения, самоторможение, компактные размеры. Недостатками являются низкий КПД, быстрый износ бронзового колеса, а также ограниченная способность передавать большие мощности.
Гипоидная передача – она же спироидная состоит из конического червяка и диска со спиральными зубьями. Ось червяка значительно смещена от оси конического колеса, благодаря чему число зубьев одновременно входящих в зацепление в несколько раз больше чем у червячных передач. В отличие от червячной пары в гипоидной передаче линия контакта перпендикулярна к направлению скорости скольжения, что обеспечивает масленый клин и уменьшает трение. Благодаря этому КПД гипоидной передачи выше, чем у червячной передачи на 25%.
а) Червячная передача с цилиндрическим червяком
б) Червячная передача с глобоидным червяком
в) Спироидная передача
г) Тороидно-дисковая передача
д) Тороидная передача внутреннего зацепления
Волновая передача – прототипом является планетарная передача с небольшой разницей количества зубов сателлита и неподвижного колеса. Волновая передача характеризуется высоким показателем передаточного отношения (до 350). Основными элементами волновой передачи являются гибкое колесо, жесткое колесо и волновой генератор. Под действием генератора гибкое колесо деформируется и происходит зацепление зубьев с жестким колесом. Волновые передачи широко применяются в точном машиностроении благодаря высокой плавности и отсутствия вибраций во время работы.
1) Зубчатое колесо с внутренними зубьями
2) Гибкое колесо с наружными зубьями соединенное с выходным валом редуктора
3) Генератор волн
Количество ступеней редуктора
Число ступеней редуктора напрямую влияет на передаточное отношение. В червячных редукторах наиболее распространены одноступенчатые пары. Цилиндрические же редукторы, состоящие из одной ступени, применяются реже, чем двух- или трехступенчатые редукторы. В производстве редукторов все чаще применяются комбинированные передачи, состоящие из разных типов передач, например коническо-цилиндрические редукторы.
Входные и выходные валы редукторов
В редукторах обычно применяются обычные прямые валы, имеющие форму тел вращения. На валы редукторов действуют внешние нагрузки, консольные нагрузки и усилия преодоления зацеплений. Крутящий момент на валу определяется рабочим крутящим моментом редуктора или реактивным крутящим моментом привода. Консольная нагрузка определяется способом соединения редуктора с двигателем, зависит от радиального или осевого усилия на вал. В ряде машин, к которым предъявляются особые требования в отношении габаритов или веса используются редукторы с полым валом. Полый вал редуктора позволяет располагать вал исполнительного механизма внутри редуктора, тем самым отпадает необходимость использовать переходные полумуфты и т.п.
Срок службы редуктора
Срок службы редуктора зависит от правильных расчетов параметров действующей нагрузки. Также на длительность работы влияет своевременное профилактическое обслуживание редуктора, замена масла и сальников. Регулярный профилактический осмотр позволит избежать незапланированного ремонта или замену редуктора. Уровень масла контролируется через смотровое окно в редукторе и при необходимости доливается до нужного уровня.
Ниже приведена таблица зависимости срока службы редуктора от типа передачи:
Тип передачи редуктора | Гарантированный ресурс в часах |
Цилиндрическая, планетарная, коническая, цилиндро-коническая | более 25000 |
Волновая, червячная, глобоидная | более 10000 |
Устройство редуктора
Основными элементами редуктора являются:
1. Прошедшие обработку зубчатые колеса с зубьями высокой твердости. Материалом обычно служит сталь марки (40Х, 40ХН ГОСТ 4543-71). В планетарных редукторах шестерни и сателлиты изготовлены из стали марки 25ХГМ ГОСТ 4543-71. Зубчатые венцы из стали 40Х. Червячные валы изготавливаются из стали марки ГОСТ 4543-71 – 18ХГТ, 20Х с последующей цементацией рабочих поверхностей. Венцы червячных редукторов изготавливают из бронзы Бр010Ф1 ГОСТ 613-79. Гибкое колесо волнового редуктора изготовлено из кованой стали 30ХГСА ГОСТ 4543-71.
2. Валы (оси) быстроходные, промежуточные и тихоходные. Материалом является — сталь марки (40Х, 40ХН ГОСТ 4543-71). В зависимости от варианта сборки выходные валы могут быть одно- и двухконцевыми, а также полыми со шпоночным пазом. Выходные валы планетарных редукторов изготовлены заодно с водилом последней ступени. Материалом служит чугун или сталь.
3. Подшипниковые узлы. Используются подшипники качения воспринимающие большие осевые и консольные нагрузки. Применяются обычно конические роликоподшипники.
4. Шлицевые, шпоночные соединения. Шлицевые соединения чаще применяются в червячных редукторах (выходной полый вал). Шпонки применяются для соединения валов с зубчатыми колесами, муфтами и другими деталями.
5. Корпуса редукторов. Корпуса и крышки редукторов выполняются методом литья. В качестве материалов используется чугун марки СЧ 15 ГОСТ 1412-79 или сплав алюминия АЛ11. Для улучшения отвода тепла корпуса редукторов снабжаются ребрами.
Монтажное исполнение
Соосный редуктор — входной и выходной вал находятся на одной оси
Червячный редуктор — входной и выходной вал находятся под прямым углом
Цилиндрический редуктор — входной и выходной вал находятся на параллельных осях
Коническо-цилиндрический редуктор — входной и выходной вал перекрещиваются
Монтажное положение соосных цилиндрических или планетарных редукторов
Монтажное положение и вариант сборки червячных одноступенчатых редукторов
Монтажное положение и вариант сборки червячных двухступенчатых редукторов
Монтажное положение и вариант сборки цилиндрических редукторов
Методика выбора редуктора в зависимости от нагрузки
Методика выбора редуктора заключается в грамотном расчете основных параметров нагрузки и условий эксплуатации.
Технические характеристики описаны в каталогах, а выбор редуктора делается в несколько этапов:
- выбор редуктора по типу механической передачи
- определение габарита (типоразмера) редуктора
- определение консольных и осевых нагрузок на входной и выходной валы
- определение температурного режима редуктора
На первом этапе конструктор определяет тип редуктора исходя из заданных задач и конструктивных особенностей будущего изделия. На этом же этапе закладываются такие параметры как: передаточное отношение, количество ступеней, расположение входного и выходного валов в пространстве.
На втором этапе следует определить межосевое расстояние. Исходные данные на каждый тип редуктора можно найти в каталоге. Следует помнить, что межосевое расстояние влияет на способность передать момент от двигателя к нагрузке.
Консольные и осевые нагрузки определяются уравнениями, а потом сравниваются со значениями в каталоге. В случае превышения расчетных нагрузок, на какой либо вал, редуктор выбирается на типоразмер выше.
Температурный режим определяется во время работы редуктора. Температура не должна превышать + 80° гр. при длительной работе редуктора с действующей нагрузкой.
Как выбрать редуктор?
Выбор редуктора должен производить квалифицированный сотрудник т.к. неправильные расчеты могут привести к поломке редуктора или сопутствующего оборудования. Грамотный выбор редуктора поможет избежать дальнейшие затраты на ремонт и покупку нового привода. Основными параметрами для выбора редуктора как было сказано выше, являются: тип редуктора, габарит или типоразмер, передаточное отношение, а также кинематическая схема.
Определить габарит редуктора можно с помощью каталога, где указаны максимальные значения крутящего момента для каждого типоразмера. Момент действующей нагрузки на редуктор определяется следующим выражением:
где:
M2 — выходной момент на валу редуктора (Н/М)
P1 — подводимая мощность на быстроходном валу редуктора (кВт)
Rd — динамический КПД редуктора (%)
n2 — частота вращения тихоходного вала (об/мин)
Частоту вращения тихоходного вала n2 можно определить, зная значения передаточного отношения редуктора i, а также значения скорости быстроходного вала n1.
где:
n1 — частота вращения быстроходного вала (об/мин)
n2 — частота вращения тихоходного вала (об/мин)
i — передаточное отношение редуктора
Еще одним важным фактором, который следует учитывать при подборе редуктора, является величина – сервис фактор (s/f). Сервис фактор sf – это отношение максимально допустимого момента M2 max указанного в каталоге к номинальному моменту M2 зависящего от мощности двигателя.
где:
M2 max — максимально допустимый момент (паспортное значение)
M2 — номинальный момент на валу редуктора (зависит от мощности двигателя)
Значение сервис фактора (s/f) напрямую связан с ресурсом редуктора и зависит от условий работы привода.
При работе редуктора с нормальной нагрузкой, где число стартов не превышает 60 пусков в час — сервис фактор может выбираться: sf = 1.
При средней нагрузке, где число стартов не превышает 150 пусков в час — сервис фактор выбирается: sf = 1,5.
При тяжелой ударной нагрузке с возможностью заклинивания вала редуктора сервис фактор выбирается: sf = 2 и более.
Передаточное отношение и как его определить?
Основное назначение любого редуктора понижение угловой скорости подводимой на его входной вал. Значения выходной скорости определятся передаточным отношением редуктора. Передаточное отношение редуктора — это отношение скорости входного вала к скорости выходного вала.
Виды редукторов | AUTO-GL.ru
Для изменения характеристик крутящего момента используется специальный механизм, который получил название «редуктор». Данное слово образовано от латинского reductor — отводящий назад или возвращающий, что очень точно отображает принцип работы этого механизма. На данный момент существует несколько видов редукторов, которые применяются в различных агрегатах для трансформации и передачи крутящего момента от двигателя устройства, к потребителям мощности.
Данные устройства отличаются по типу передачи крутящего момента.
- Червячные редукторы. Передаточная система этих устройств содержит червячную передачу, которая позволяет не только значительно уменьшить обороты рабочего вала, но и изменить направление вращения. Вал редуктора на выходе устройства, обычно расположен под прямым углом по отношению к входному валу. Такая особенность червячных устройств позволяет наиболее компактно разместить двигатель совместно с передающим крутящий момент механизмом. Передаточное число редуктора этого типа может быть до 1 к 100 и более;
- Зубчатые редукторы. Зубчатые механизмы трансформации крутящего момента, часто применяются в агрегатах, в которых необходимо осуществить различное соотношение передаточного числа между входным и выходным валом. Устройство редуктора этого типа может выполнено с одним передаточным механизмом, или с использованием нескольких шестерён при значительном передаточном соотношении. Зубья, в таких устройствах, могут иметь различную форму, но качество обработки таких деталей должно быть наивысшим;
- Гидравлические редукторы. Такие устройства устанавливаются между насосом и гидравлическими механизмами. Используется гидравлический редуктор с той же целью, что и механические — для уменьшения передаваемой энергии или частоты вращения;
- Мотор-редуктор. Эта система также используется для трансформации крутящего момента и представляет собой объединённый в одном корпусе редуктор и двигатель. Наиболее часто встречаются мотор-редукторы, работающие на электрической тяге. В этом случае удаётся значительно уменьшить размер редуктора и увеличить КПД устройства;
- Планетарные редукторы. Передающая система и схема редуктора планетарного типа, представляет собой разновидность зубчатого механизма, но благодаря оригинальности применяемого способа передачи крутящего момента может считаться отдельным видом. Такие механизмы компактны и очень надёжны в эксплуатации, но требуют точного расчёта при производстве. Зубья планетарных редукторов должны находиться в плотном зацеплении между собой, но легко приводиться в движение.
Перечисленные виды редукторов, могут разделяться по количеству передач, которые применяются для трансформации крутящего момента. Наиболее распространённые устройства состоят из одной передачи, но если необходимо изменять соотношения частоты вращения входного и выходного вала, то используются механизмы с большим количеством передач.
Рабочие части редукторов, обязательно должны работать в смазке, для снижения коэффициента трения и потери мощности. Способ нанесения смазочных материалов зависит от вида редуктора и мощности передаваемой энергии. Если передаточная система не работает в условиях повышенных скоростей вращения, то достаточно однократного нанесения смазки на рабочие поверхности в течение всего срока эксплуатации. Для мощных устройств применяется специальная система принудительной подачи смазочной жидкости, с последующим охлаждением и очисткой.
Корпус редуктора может быть разборной и неразборной конструкции.
Изделия неразборного вида, как правило, работают при незначительных мощностных показателях и в тех сферах, где не требуется эксплуатации устройства в жёстких режимах. Редукторы, которые используются для трансформации больших мощностей располагаются в корпусе разборной конструкции, которая позволяет, в случае необходимости, осуществить плановый или экстренный ремонт и настройку механизма.
Корпус редуктора может быть изготовлен из различных материалов. Подбор материала зависит от условий эксплуатации и мощности устройства. Редуктор для маломощных устройств бытового назначения может быть сделан из высокопрочного пластика или алюминиевого сплава.
Где применяются редукторы
Редукторы применяются в автомобилестроении, станкостроении, кухонной и бытовой электротехнике, бензоинструментах. Учитывая тот факт, что каждый вид передачи крутящего момента, имеет свои положительные характеристики и недостатки, которые определяют возможность использовать тот или иной вид редуктора в определённых технических условиях.
Червячные редукторы, не способны трансформировать крутящий момент слишком большой мощности, поэтому основная сфера применения таких устройств — это электрические мотор-редукторы. Например, такой механизм успешно реализован в приводе стеклоочистителей автомобиля.
В мостовой передаче автомобилей, как правило, используется зубчатая передача, которая позволяет не только изменить направление крутящего момента, но и изменить силу и распределить усилие равномерно между осями привода колёс. Зубья позволяют передавать мощность с минимальными потерями, поэтому если для функционирования механизма не требуется повышенной плавности хода, а мощность редуктора требуется достаточно большая, то применяются зубчатые механизмы для передачи крутящего момента.
Если в механизме необходимо исключить вероятность обратной передачи крутящего момента к двигателю устройства, то применяются червячные редукторы, которые полностью лишены такого недостатка.
Червячный механизм, позволяет передавать вращение с соотношением более 100 к 1, но низкий КПД таких устройств, не позволяет их применять в мощных агрегатах.
Различные типы редукторов, которые будут использованы в тех или иных механизмах должны быть подобраны только профессиональными инженерами. Расчёт редуктора должен осуществляться в КБ, которое имеет специалистов высокого уровня. Чертёж редуктора должен быть выполнен до мельчайших подробностей и гаек, которые могут быть использованы в данном механизме.
Даже если известны характеристики редукторов, которые необходимо применить в передаточном механизме, не следует доверять работу по проектированию таких сложных механизмов случайным людям. Если требуется новая крышка редуктора, или гайка редуктора, то лучше заказать оригинальную деталь на предприятии, где был произведён механизм.
Классификация редукторов и их особенности и различия
Редуктором называется устройство, которое входит в состав приводных механизмов машин и оборудования. Его главной задачей является повышение крутящих моментов путем снижения угловых скоростей ведущего вала. В разных редукторах применяются разные виды передач — червячные, цепные, зубчатые, а также комбинированные (зубчато-червячные, зубчато-цепные и др.). Основными техническими характеристиками являются:
- мощность;
- угловые скорости валов;
- КПД;
- передаточное отношение;
- число передач и ступеней.
В настоящее время существует несколько разновидностей редукторов. Кратко охарактеризуем каждую из них.
Цилиндрический редуктор
Эта конструкция является одной из самых популярных. Как и другие разновидности, она используется для изменения скорости вращения при передаче крутящего момента. Ее активно применяют в современных узлах и механизмах общепромышленного характера.
Цилиндрические редукторы бывают одно-, двух- и трехступенчатыми. Выносливость и производительность устройства в определяющей степени влияет на выполнение машинами и оборудованием своих функциональных задач, а также на их надежность и долговечность.
Червячный редуктор
В данной конструкции используется передача, имеющая резьбу с червячным профилем. Данный механизм является хорошим решением для передачи крутящего момента между расположенными перпендикулярно осями (например, он может использоваться в рулевом управлении механических транспортных средств). Его несомненным достоинством является способность получить большое передаточное число в одной ступени (от 80 до нескольких сотен). Такие редукторы характеризуются отсутствием шума, плавностью хода и возможностью самостоятельного торможения при достижении определенных передаточных чисел, благодаря чему отпадает необходимость использования тормозных механизмов.
Комбинированный редуктор
Данный тип включает в себя сразу несколько конструктивных решений: разные передачи объединены в одном корпусе. Он относится к числу наиболее практичных решений, поскольку выгодно отличается хорошими эксплуатационными характеристиками, небольшими габаритами и относительно невысокой ценой. Таковыми являются, например, коническо-цилиндрические редукторы, цилиндро-червячные и др.
Коническо-цилиндрический редуктор
Данное устройство включает в себя одну коническую и несколько цилиндрических передач. Его использование целесообразно в случаях, когда ось вала подвода пересекается с осью вала отбора мощности. Такой редуктор может иметь вертикальное и горизонтальное исполнение, в зависимости от специфики эксплуатации. В первой ступени конические колеса имеют, как правило, зубья с криволинейным профилем, поскольку именно на эту ступень приходятся максимальные линейные и угловые скорости (до 60 тыс. об/мин). В подобной ситуации зубья с плавным профилем не способны обеспечить плавность хода. Несомненными преимуществами данной конструкции являются высокий КПД, износостойкость и долговечность.
Планетарный редуктор
Один из наиболее типичных представителей категории механических редукторов. В основе конструкции лежит использование планетарной передачи (отсюда и название устройства), которая преобразует крутящий момент с помощью нескольких зубчатых шестерен, взаимодействующих с центральной шестерней. Такой редуктор также называют дифференциальным; в нем может использоваться как одна, так и несколько планетарных передач.
Сегодня редукторы широко используются во всех сферах промышленности и народного хозяйства. Землеройная, карьерная и строительно-дорожная техника оснащается специальными и стандартными редукторами. Они могут интегрироваться как в гусеничный, так и в традиционный колесный привод, благодаря чему для машин, эксплуатируемых в сложных условиях, обеспечивается большой клиренс.
Оборудование, используемое в лесной отрасли и сельском хозяйстве (погрузчики, транспортеры, поворотные механизмы, приводы подъемников и др.), должно соответствовать самым строгим критериям надежности, эффективности и долговечности. Редукторы для горнорудной и добывающей сферы характеризуются выносливостью и способностью долгое время работать в режиме интенсивной эксплуатации.
Редукторы планетарной конструкции широко используются в устройствах и механизмах, осуществляющих передачу очень больших крутящих моментов. На предприятиях энергетической сферы и нефтеперерабатывающей отрасли редукторы, удовлетворяющие самым жестким критериям долговечности и надежности, применяются в отопительных системах, винтовых компрессорах, вентиляторах, генераторных установках.
Также редукторы повсеместно используются в пищевой промышленности, особенно в механизмах, реализующих циклы с высоким крутящим моментом при низких оборотах. Это характерно для экструдеров, мельниц, спиральных морозильных аппаратов, мешалок и др.
Что такое редуктор? Характеристики. Виды.
Что такое редуктор? Характеристики. Виды.
В настоящее время сотни миллионов редукторов работают на повышение эффективности на суше, в воде и воздухе во всем мире. Редукторы применяются уже не один десяток лет в различных областях техники и приборостроения, однако, наибольшее распространение, редукторы получили в автомобильной промышленности при производстве узлов и агрегатов автомобилей.
Ответить на вопрос «Что такое редуктор?» поможет данная статья. Мы постарались по-максимуму осветить теоретические аспекты понятия «редуктор».
Большая советская энциклопедия определяет редуктор как механизм, который входит в приводы различных машин, и который служит для снижения угловых скоростей ведомого вала для повышения крутящего момента.
Редуктор, также, является устройством для снижения и поддержания постоянного давления рабочей среды, например, газа, пара или жидкости на выходе из ёмкости с высоким давлением (баллона), при этом выполняющим функции запорного и предохранительного клапана. Редукторы устанавливаются в аппаратах газовой сварки, в сатураторах, хлораторах воды и др., и используются в различных аппаратах для осуществления таких дополнительных операций, как смешение, подогрев и охлаждение.
Многообразие сфер применения редукторов обусловило появление огромного количества его разновидностей. В зависимости от сферы применения и конструктивных особенностей выделяют: общепромышленные редукторы и мотор-редукторы. Выделяют, также, и другие разновидности: турборедуктор, мультипликатор (вариатор), конический, цилиндрический, червячный, волновой, планетарный редуктор.
Однако, в любом редукторе, главными характеристиками служат: коэффициент полезного действия (КПД), передаточное отношение, мощность, угловые скорости валов, количество ступеней или передач.
Итак, рассмотрим некоторые виды редукторов подробнее.
Мотор-редуктор – это сложная конструкция, которая представляет собой систему, состоящую из двух элементов: двигателя и, непосредственно, редуктора (Рисунок 1.)Используется мотор-редуктор в тех механизмах, в которых не требуется чрезмерно точное позиционирование. Конструктивно, в мотор-редукторе могут быть использованы червячные, цилиндрические или планетарные редукторы. Так, например, червячный мотор-редуктор предполагает использование, в своей конструкции, червячной передачи. Такой мотор-редуктор обладает относительно бесшумной работой и сравнительно небольшими размерами.
Рисунок 1. Мотор-редуктор
В редукторах используются зубчатые передачи, червячные передачи и цепные передачи, которые также могут применяться в различных сочетаниях одновременно, например, червячные и зубчатые, цепные и зубчатые и др. Существуют комбинированные приводы, в которых редукторы компонуют с вариатором.
Цилиндрический редуктор — такая конструкция редуктора является одной из самых популярных. Цилиндрические редукторы используются для изменения скорости вращения при передаче крутящего момента (Рисунок 2). Такие редукторы активно применяются в современных узлах и механизмах общепромышленного назначения.
Рисунок 2. Цилиндрический редуктор.
Цилиндрические редукторы представлены одно-, двух- и трехступенчатыми модификациями. Такие редукторы надежны и долговечны, поэтому, обладающие цилиндрическими редукторами машины и оборудование, выносливы и производительны.
Червячный редуктор – конструкция такого редуктора использует передачу, обладающую резьбой с червячным профилем (Рисунок 3). Механизм червячного редуктора является превосходным решением для передачи крутящего момента между двумя перпендикулярными осями. Так, например, Червячный редуктор используется в рулевом управлении механических транспортных средств, таких, как автомобили. Достоинством червячного редуктора является возможность получения большого передаточного числа в одной ступени (от 80 до нескольких сотен). Червячные редукторы бесшумны, обладают плавностью хода, а также, не требуют использования тормозных механизмов благодаря возможности самостоятельного торможения при достижении определенных передаточных чисел.
Рисунок 3. Червячный редуктор.
Комбинированный редуктор — данный тип редукторов — это совокупность нескольких конструктивных решений, включающая в себя разные виды передач объединенных в одном корпусе. Комбинированный редуктор относится к ряду наиболее практичных редукторов. Он выгодно отличается от других типов редукторов хорошими эксплуатационными характеристиками, при небольших габаритах, а также относительно невысокой ценой. К редукторам комбинированного типа относят: цилиндро-червячные редукторы (Рисунок 4), коническо-цилиндрические и др.
Рисунок 4. Цилиндро-червячный редуктор.
Коническо-цилиндрический редуктор — конструктивно включает в себя одну коническую и несколько цилиндрических передач (Рисунок 5). Использование коническо-цилиндрического редуктора оправдано в случаях, когда ось вала подвода перпендикулярно пересекается с осью вала отбора мощности. Коническо-цилиндрический редуктор, в зависимости от специфики эксплуатации, может быть изготовлен в вертикальном или горизонтальном исполнении. В первой ступени конические колеса, как правило, имеют зубья с криволинейным профилем, поскольку именно на эту ступень приходятся максимальные (до 60 тыс. об/мин) линейные и угловые скорости. В подобных случаях, зубья с плавным профилем не могут обеспечить плавность хода. Несомненными преимуществами конструкции коническо-цилиндрического редуктора являются достаточно высокий КПД, износостойкость и долговечность.
Рисунок 5. Коническо-цилиндрический редуктор.
Планетарный редуктор — один из типичнейших представителей механических редукторов. В основе конструкции такого редуктора лежит использование планетарной передачи, которая преобразует крутящий момент при помощи нескольких зубчатых шестерен, которые взаимодействуя с центральной шестернёй, изменяют скорость вращения на выходе (Рисунок 6).
Рисунок 6.
Планетарный редуктор также называют дифференциальным. В таком редукторе может использоваться как одна, так и несколько планетарных передач (Рисунок 7).
Рисунок 7. Планетарный редуктор.
На сегодняшний день, редукторы широко распространены во всех сферах промышленности и народного хозяйства. Любая строительная, дорожная, землеройная, карьерная техника оснащается стандартными и специальными редукторами. Редукторы интегрируются как в гусеничный, так и в традиционный колесный привод; благодаря этому, специальные машины, эксплуатируемые в сложных условиях, имеют большой клиренс.
Используемое в лесной отрасли и сельском хозяйстве оборудование, такое, как транспортеры, погрузчики, приводы подъемников, поворотные механизмы и многое другое, должно соответствовать самым строгим критериям надежности, эффективности и долговечности. Именно поэтому, редукторы в этих механизмах, а также в оборудовании для горнорудной и добывающей сферы характеризуются максимальной выносливостью и способностью работать продолжительное время в режиме интенсивной эксплуатации.
Редукторы планетарной конструкции подходят для работы в устройствах и механизмах, в которых осуществляется передача очень больших крутящих моментов. Редукторы, удовлетворяющие самым жестким критериям долговечности и надежности, применяются на предприятиях энергетики и нефтепереработки в отопительных системах, вентиляторах, винтовых компрессорах, генераторных установках.
Редукторы, также, нашли применение в пищевой промышленности, особенно в тех механизмах, где реализуются циклы с высоким крутящим моментом при низких оборотах. Это такие механизмы, как мельницы, экструдеры, мешалки, спиральные морозильные аппараты.
В бытовой технике и электрооборудовании, в составе которого имеются электродвигатели, также применяются редукторы, как понижающие и регулирующие обороты устройства. Невозможно представить без редукторов конструкцию миксеров, стиральных машин, кухонных комбайнов, болгарок, дрелей.
Редукторы — необходимая и незаменимая часть очистных сооружений, насосных систем, вентиляционного оборудования.
Все о редукторах. Справочная информация
Классификация, основные параметры редукторов
Цилиндрические редукторы
Червячные редукторы
Планетарные редукторы
Конические редукторы
Классификация редукторов в зависимости от вида передач и числа ступеней
Конструкция и назначение редуктора
Особенности редукторов по виду механических передач
Количество ступеней редуктора
Входные и выходные валы редукторов
Срок службы редуктора
Устройство редуктора
Монтажное исполнение
Как подобрать редуктор? Простые правила и примеры расчета
Передаточное отношение и как его определить?
Редукторы (латинского слова reductor) получили широкое распространение во всех отраслях промышленного и аграрного хозяйства, поэтому их производство с каждым годом увеличивается, появляются новые модификации, совершенствуются уже существующие модели.
Редуктор служит для снижения частоты вращения тихоходного вала и увеличения усилия на выходном валу. Редуктор может иметь одну или несколько ступеней, цель которых увеличение передаточного отношения. По типу механической передачи редукторы могут быть червячными, коническими, планетарными или цилиндрическими. Конструктивно редуктор выполнен как отдельное изделие, работающее в паре с электродвигателем и установленное с ним на одной раме.
Промышленностью сегодня выпускаются редукторы общего и специального назначения.
Редукторы общего назначения могут применяться во многих случаях и отвечают общим требованиям. Специальные же редукторы имеют нестандартные характеристики подходящие под определенные требования.
Классификация, основные параметры редукторов
В зависимости от типа зубчатой передачи редукторы бывают цилиндрические, конические, волновые, планетарные, глобоидные и червячные. Широко применяются комбинированные редукторы, состоящие из нескольких совмещенных в одном корпусе типов передач (цилиндро-конические, цилиндро-червячные и т.д.).
Конструктивно редукторы могут передавать вращение между перекрещивающимися, пересекающимися и параллельными валами.
Так, например цилиндрические редукторы позволяют передать вращение между параллельными валами, конические — между пересекающимися, а червячные — между пересекающимися валами.
Общее передаточное число может достигать до нескольких десятков тысяч, и зависит от количества ступеней в редукторе. Широкое применение нашли редукторы, состоящие из одной, двух или трех ступеней, при чем они могут, как описывалось выше, совмещать разные типы зубчатых передач.
Ниже представлены наиболее популярные виды редукторов, серийно выпускаемые промышленностью.
Цилиндрические редукторы
Цилиндрические редукторы являются самыми популярными в машиностроении. Они позволяют передавать достаточно большие мощности, при этом КПД достигает 95%. Вращение передается между параллельными или соосными валами. Передаваемая мощность зависит от типоразмера редуктора. В цилиндрических редукторах применяются передачи, состоящие из прямозубых, косозубых или шевронных зубчатых колес. Количество цилиндрических передач напрямую влияет на передаточное отношение. Например, одноступенчатый редуктор может иметь передаточное число 1,5 до 10, две ступени — от 10 до 60, а три ступени — от 60 до 400.
Кинематические схемы наиболее распространенных видов цилиндрических редукторов представлены на рисунке ниже:
А) — Простой одноступенчатый цилиндрический редуктор
Б) – Двухступенчатый редуктор цилиндрический с несимметричным расположением зубчатых колес
В) – Трехступенчатый цилиндрический редуктор, входной вал быстроходной передачи изготовлен с двумя шестернями
Г) – Соосный цилиндрический редуктор
Д) — Соосный цилиндрический редуктор с симметричным расположением опор относительно тихоходной передачи
Е) — Соосный цилиндрический редуктор с шевронной быстроходной передачей
Ж) — Соосный цилиндрический редуктор с раздвоенной передачей
З) — Соосный цилиндрический редуктор с посаженными на быстроходный вал двумя косозубыми шестернями с противоположенным наклоном зубьев
И) – Трехступенчатый цилиндрический редуктор с раздвоенной быстроходной и тихоходной передачей
Червячные редукторы
Червячные редукторы получили большую популярность в виду своей простоты и достаточно низкой стоимости. Из всех видов червячных редукторов наиболее распространены редукторы с цилиндрическими или глобоидными червяками. Как и многие другие типы редукторов червячные могут состоять из одной или нескольких ступеней. На одноступенчатом редукторе передаточное отношение может быть в пределах 5-100, а на двух ступенях может достигать 10000. Основными достоинствами редукторов червячного типа являются компактные размеры, плавность хода и самоторможение. Из недостатков можно отметить не очень высокий КПД и ограниченная нагружаемая способность. Основными элементами являются зубчатое колесо и цилиндрический червяк. Цилиндрический червяк представляет собой винт с нанесенной на его поверхности резьбой определенного профиля. Число заходов зависит от передаточного отношения, и может составлять от 1 до 4. Вторым основным элементом редуктора является червячное колесо. Оно представляет собой зубчатое колесо из сплава бронзы, количество зубьев также зависит от передаточного отношения и может составлять 26-100.
В ниже приведенной таблице представлена зависимость передаточного отношения от количества зубов колеса и заходов винта.
Передаточное отношение | Число заходов червяка | Число зубов колеса |
7-8 | 4 | 28-32 |
9-13 | 3-4 | 27-52 |
14-24 | 2-3 | 28-72 |
15-27 | 2-3 | 50-81 |
28-40 | 1-2 | 28-80 |
40 | 1 | 40 |
Кинематические схемы одноступенчатых червячных редукторов представлены ниже:
А) Редуктор с нижним расположением червяка
Б) Редуктор с верхним расположением червяка
В) Редуктор с боковым расположением червяка (ось червяка расположена горизонтально)
Г) Редуктор с боковым расположением червяка (ось червяка расположена вертикально)
Редукторы червячные двухступенчатые позволяют получить моменты в диапазоне 100 – 2800Нм. Конструкция представляет собой жесткую скрутку двух редукторов. Между собой редукторы соединены с помощью фланца. Цилиндрический вал первой ступени установлен в полый вал второй ступени.
Вариант расположения червячных пар представлен на рисунке ниже:
Расположение входного и выходного вала зависит от варианта сборки. Существуют следующие сборки: 11, 12, 13, 16, 21, 22, 23, 26.
Планетарные редукторы
Планетарные редукторы нашли широкое применение в тяжелом машиностроении, так как обладают рядом преимуществ перед редукторами другого типа. На редукторах планетарного типа можно получить достаточно большие передаточные числа, при этом габариты редуктора будут намного меньше чем у червячного или цилиндрического редуктора. Конструкция редуктора представляет собой планетарный механизм. Основными элементами редуктора являются сателлиты, солнечная шестерня, кольцевая шестерня и водило.
Внешний вид устройства планетарного редуктора представлен ниже:
А) сателлиты
Б) солнечная шестерня
В) водило
Г) кольцевая шестерня
Кольцевая шестерня планетарного редуктора находится в неподвижном состоянии, Вращение от входного вала передается на солнечную шестерню находящеюся в зацеплении со всеми сателлитами. Сателлиты вращаются внутри неподвижной кольцевой шестерни передавая энергию вращения на водило, а далее на выходной вал редуктора. Планетарный механизм может быть одно-, двух- и трехступенчатым, передаточное отношение зависит от количества зубьев на каждой шестерне.
Свое название планетарный редуктор получил благодаря тому, что зубчатые колеса вращаются подобно планетам солнечной системы. Планетарные редукторы могут быть одно-, двух- и трехступенчатыми. Передаточное отношение может быть в пределах 6 – 450. Редукторы планетарного типа обладают высоким КПД, и позволяют передавать большие мощности без потерь на нагрев. Для удобства монтажа планетарные редукторы выпускаются на лапах или на опорном фланце, а также возможен комбинированный вариант.
В настоящий момент на Российском рынке приводной техники пользуются популярностью редукторы серии 3МП и МПО.
Конические и цилиндро-конические редукторы
Конические и цилиндро-конические редукторы передают момент между пересекающимися или скрещивающимися валами. В редукторах применяются шестерни в виде конуса с прямыми или косыми зубами. Конические редукторы имеют большую плавность зацепления, что позволяет им выдерживать большие нагрузки. Редукторы могут быть одно-, двух- и трехступенчатыми. Большое распространение получили цилиндро-конические редукторы, где общее передаточное отношение может достигать 315. Быстроходный и тихоходный валы редуктора могут располагаться горизонтально и вертикально. По типу кинематической схемы конические и цилиндро-конические редукторы могут быть развернутые или соосные.
На рисунке ниже представлены кинематические схемы конических редукторов:
А) Реверсивный конический редуктор. Смена направления вращения достигается установкой зубчатого колеса с противоположенной стороны конической шестерни.
Б) Реверсивный конический редуктор. Конические шестерни вращаются в разных направлениях. Подключение тихоходного вала к одной из конических шестеренок происходит за счет кулачковой муфты.
В) Двухступенчатый коническо-цилиндрический редуктор. Быстроходный и тихоходный валы находятся под прямым углом в одной плоскости.
Г) Двухступенчатый коническо-цилиндрический редуктор. Входной и выходные валы перекрещиваются и лежат в разных плоскостях.
Д) Трехступенчатый коническо-цилиндрический редуктор. Быстроходный и тихоходный валы находятся под прямым углом в одной плоскости.
Е) Трехступенчатый коническо-цилиндрический редуктор. Промежуточная и тихоходная цилиндрическая передача собраны по соосной схеме.
Конические редукторы широко используются в изделиях, где требуются передать высокий момент под прямым углом. В отличие от червячных редукторов, конические редукторы не имеют быстро изнашиваемого бронзового колеса, что позволяет работать им в тяжелых условиях длительное время. Также важным отличием является обратимость, возможность передавать вращение от тихоходного вала к быстроходному валу. Обратимость позволяет разгрузить редукторный механизм в отличие от червячного редуктора, что позволяет использовать конический редуктор в установках с высокой инерцией.
Классификация редукторов в зависимости от вида передач и числа ступеней:
Тип редуктора | Количество ступеней | Тип механической передачи | Расположение тихоходного и быстроходного валов |
Цилиндрический | Одна ступень | Одна или несколько цилиндрических передач | Параллельное |
Две ступени; три ступени | Параллельное или соосное | ||
Четыре ступени | Параллельное | ||
Конический | Одна ступень | Одна коническая передача | Пересекающееся |
Коническо-цилиндрический | Две ступени; три ступени; четыре ступени | Одна коническая передача и одна или несколько цилиндрических передач | Пересекающееся или скрещивающееся |
Червячный | Одна ступень; две ступени | Одна или две червячные передачи | Скрещивающееся |
Параллельное | |||
Цилиндрическо-червячный или червячно-цилиндрический | Две ступени; три ступени | Одна или две цилиндрические передачи и одна червячная передача | Скрещивающееся |
Планетарный | Одна ступень; две ступени; три ступени | Каждая ступень состоит из двух центральных зубчатых колес и сателлитов | Соосное |
Цилиндрическо-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной или нескольких цилиндрических и планетарных передач | Параллельное или соосное |
Коническо-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной конической и планетарных передач | Пересекающееся |
Червячно-планетарный | Две ступени; три ступени; четыре ступени | Сборка из одной конической и планетарных передач | Скрещивающееся |
Волновой | Одна ступень | Одна волновая передача | Соосное |
Конструкция и назначение редуктора
Механизм, служащий для понижения угловой скорости и одновременно повышающий крутящий момент, принято называть редуктором. Энергия вращения подводится на входной вал редуктора, далее в зависимости от передаточного отношения на выходном валу получаем пониженную частоту и увеличенный момент.
В состав редуктора в зависимости от типа механической передачи обычно входят зубчатые или червячные пары, центрирующие подшипники, валы, различные уплотнения, сальники и т.д. Элементы редуктора помещаются в корпус, состоящий из двух частей – основания и крышки. Рабочие механизмы редуктора при работе непрерывно смазываются маслом путем разбрызгивания, а в отдельных случаях применяется принудительный насос, помещенный внутрь редуктора.
Существует огромное количество различных типов редукторов, но наибольшую популярность получили цилиндрические, планетарные, конические и червячные редукторы. Каждый тип редуктора имеет свои определенные преимущества и недостатки, которые следует учитывать при конструировании оборудования. Основными же критериями для подбора редуктора являются определение необходимой мощности или момента нагрузки, коэффициента редукции (передаточного отношения), а также монтажного расположения источника вращения и рабочего механизма.
Особенности редукторов по виду механических передач
Мировой промышленностью выпускается огромное количество редукторов и редукторных механизмов различающихся по типу передачи, вариантам сборки и т.д. Рассмотрим основные типы механических передач, их особенности и преимущества.
Цилиндрическая передача – является самой надежной и долговечной из всех видов зубчатых передач. Данная передача применяется в редукторах, где требуется высокая надежность и высокий КПД. Цилиндрические передачи обычно состоят из прямозубых, косозубых или шевронных зубчатых колёс.
а) Прямозубая цилиндрическая передача
б) Косозубая цилиндрическая передача
в) Шевронная цилиндрическая передача
г) Цилиндрическая передача с внутренним зацеплением
Конические передачи – обладают всеми преимуществами цилиндрических зубчатых передач и применяются в случае перекрещивания входного и выходного валов.
а) Коническая зубчатая передача с прямым зубом
б) Коническая зубчатая передача с косым зубом
в) Коническая зубчатая передача с криволинейным зубом
г) Коническая гипоидная передача
Червячная передача – позволяет передавать кинетическую энергию между пересекающимися в одной плоскости валами. Основными преимуществами данной передачи является высокий показатель передаточного отношения, самоторможение, компактные размеры. Недостатками являются низкий КПД, быстрый износ бронзового колеса, а также ограниченная способность передавать большие мощности.
Гипоидная передача – она же спироидная состоит из конического червяка и диска со спиральными зубьями. Ось червяка значительно смещена от оси конического колеса, благодаря чему число зубьев одновременно входящих в зацепление в несколько раз больше чем у червячных передач. В отличие от червячной пары в гипоидной передаче линия контакта перпендикулярна к направлению скорости скольжения, что обеспечивает масленый клин и уменьшает трение. Благодаря этому КПД гипоидной передачи выше, чем у червячной передачи на 25%.
а) Червячная передача с цилиндрическим червяком
б) Червячная передача с глобоидным червяком
в) Спироидная передача
г) Тороидно-дисковая передача
д) Тороидная передача внутреннего зацепления
Волновая передача – прототипом является планетарная передача с небольшой разницей количества зубов сателлита и неподвижного колеса. Волновая передача характеризуется высоким показателем передаточного отношения (до 350). Основными элементами волновой передачи являются гибкое колесо, жесткое колесо и волновой генератор. Под действием генератора гибкое колесо деформируется и происходит зацепление зубьев с жестким колесом. Волновые передачи широко применяются в точном машиностроении благодаря высокой плавности и отсутствия вибраций во время работы.
1) Зубчатое колесо с внутренними зубьями
2) Гибкое колесо с наружными зубьями соединенное с выходным валом редуктора
3) Генератор волн
Количество ступеней редуктора
Число ступеней редуктора напрямую влияет на передаточное отношение. В червячных редукторах наиболее распространены одноступенчатые пары. Цилиндрические же редукторы, состоящие из одной ступени, применяются реже, чем двух- или трехступенчатые редукторы. В производстве редукторов все чаще применяются комбинированные передачи, состоящие из разных типов передач, например коническо-цилиндрические редукторы.
Входные и выходные валы редукторов
В редукторах обычно применяются обычные прямые валы, имеющие форму тел вращения. На валы редукторов действуют внешние нагрузки, консольные нагрузки и усилия преодоления зацеплений. Крутящий момент на валу определяется рабочим крутящим моментом редуктора или реактивным крутящим моментом привода. Консольная нагрузка определяется способом соединения редуктора с двигателем, зависит от радиального или осевого усилия на вал. В ряде машин, к которым предъявляются особые требования в отношении габаритов или веса используются редукторы с полым валом. Полый вал редуктора позволяет располагать вал исполнительного механизма внутри редуктора, тем самым отпадает необходимость использовать переходные полумуфты и т.п.
Срок службы редуктора
Срок службы редуктора зависит от правильных расчетов параметров действующей нагрузки. Также на длительность работы влияет своевременное профилактическое обслуживание редуктора, замена масла и сальников. Регулярный профилактический осмотр позволит избежать незапланированного ремонта или замену редуктора. Уровень масла контролируется через смотровое окно в редукторе и при необходимости доливается до нужного уровня.
Ниже приведена таблица зависимости срока службы редуктора от типа передачи:
Тип передачи редуктора | Гарантированный ресурс в часах |
Цилиндрическая, планетарная, коническая, цилиндро-коническая | более 25000 |
Волновая, червячная, глобоидная | более 10000 |
Устройство редуктора
Основными элементами редуктора являются:
1. Прошедшие обработку зубчатые колеса с зубьями высокой твердости. Материалом обычно служит сталь марки (40Х, 40ХН ГОСТ 4543-71). В планетарных редукторах шестерни и сателлиты изготовлены из стали марки 25ХГМ ГОСТ 4543-71. Зубчатые венцы из стали 40Х. Червячные валы изготавливаются из стали марки ГОСТ 4543-71 – 18ХГТ, 20Х с последующей цементацией рабочих поверхностей. Венцы червячных редукторов изготавливают из бронзы Бр010Ф1 ГОСТ 613-79. Гибкое колесо волнового редуктора изготовлено из кованой стали 30ХГСА ГОСТ 4543-71.
2. Валы (оси) быстроходные, промежуточные и тихоходные. Материалом является — сталь марки (40Х, 40ХН ГОСТ 4543-71). В зависимости от варианта сборки выходные валы могут быть одно- и двухконцевыми, а также полыми со шпоночным пазом. Выходные валы планетарных редукторов изготовлены заодно с водилом последней ступени. Материалом служит чугун или сталь.
3. Подшипниковые узлы. Используются подшипники качения воспринимающие большие осевые и консольные нагрузки. Применяются обычно конические роликоподшипники.
4. Шлицевые, шпоночные соединения. Шлицевые соединения чаще применяются в червячных редукторах (выходной полый вал). Шпонки применяются для соединения валов с зубчатыми колесами, муфтами и другими деталями.
5. Корпуса редукторов. Корпуса и крышки редукторов выполняются методом литья. В качестве материалов используется чугун марки СЧ 15 ГОСТ 1412-79 или сплав алюминия АЛ11. Для улучшения отвода тепла корпуса редукторов снабжаются ребрами.
Монтажное исполнение
Соосный редуктор — входной и выходной вал находятся на одной оси
Червячный редуктор — входной и выходной вал находятся под прямым углом
Цилиндрический редуктор — входной и выходной вал находятся на параллельных осях
Коническо-цилиндрический редуктор — входной и выходной вал перекрещиваются
Монтажное положение соосных цилиндрических или планетарных редукторов
Монтажное положение и вариант сборки червячных одноступенчатых редукторов
Монтажное положение и вариант сборки червячных двухступенчатых редукторов
Монтажное положение и вариант сборки цилиндрических редукторов
Методика выбора редуктора в зависимости от нагрузки
Методика выбора редуктора заключается в грамотном расчете основных параметров нагрузки и условий эксплуатации.
Технические характеристики описаны в каталогах, а выбор редуктора делается в несколько этапов:
- выбор редуктора по типу механической передачи
- определение габарита (типоразмера) редуктора
- определение консольных и осевых нагрузок на входной и выходной валы
- определение температурного режима редуктора
На первом этапе конструктор определяет тип редуктора исходя из заданных задач и конструктивных особенностей будущего изделия. На этом же этапе закладываются такие параметры как: передаточное отношение, количество ступеней, расположение входного и выходного валов в пространстве.
На втором этапе следует определить межосевое расстояние. Исходные данные на каждый тип редуктора можно найти в каталоге. Следует помнить, что межосевое расстояние влияет на способность передать момент от двигателя к нагрузке.
Консольные и осевые нагрузки определяются уравнениями, а потом сравниваются со значениями в каталоге. В случае превышения расчетных нагрузок, на какой либо вал, редуктор выбирается на типоразмер выше.
Температурный режим определяется во время работы редуктора. Температура не должна превышать + 80° гр. при длительной работе редуктора с действующей нагрузкой.
Как выбрать редуктор?
Выбор редуктора должен производить квалифицированный сотрудник т.к. неправильные расчеты могут привести к поломке редуктора или сопутствующего оборудования. Грамотный выбор редуктора поможет избежать дальнейшие затраты на ремонт и покупку нового привода. Основными параметрами для выбора редуктора как было сказано выше, являются: тип редуктора, габарит или типоразмер, передаточное отношение, а также кинематическая схема.
Определить габарит редуктора можно с помощью каталога, где указаны максимальные значения крутящего момента для каждого типоразмера. Момент действующей нагрузки на редуктор определяется следующим выражением:
где:
M2 — выходной момент на валу редуктора (Н/М)
P1 — подводимая мощность на быстроходном валу редуктора (кВт)
Rd — динамический КПД редуктора (%)
n2 — частота вращения тихоходного вала (об/мин)
Частоту вращения тихоходного вала n2 можно определить, зная значения передаточного отношения редуктора i, а также значения скорости быстроходного вала n1.
где:
n1 — частота вращения быстроходного вала (об/мин)
n2 — частота вращения тихоходного вала (об/мин)
i — передаточное отношение редуктора
Еще одним важным фактором, который следует учитывать при подборе редуктора, является величина – сервис фактор (s/f). Сервис фактор sf – это отношение максимально допустимого момента M2 max указанного в каталоге к номинальному моменту M2 зависящего от мощности двигателя.
где:
M2 max — максимально допустимый момент (паспортное значение)
M2 — номинальный момент на валу редуктора (зависит от мощности двигателя)
Значение сервис фактора (s/f) напрямую связан с ресурсом редуктора и зависит от условий работы привода.
При работе редуктора с нормальной нагрузкой, где число стартов не превышает 60 пусков в час — сервис фактор может выбираться: sf = 1.
При средней нагрузке, где число стартов не превышает 150 пусков в час — сервис фактор выбирается: sf = 1,5.
При тяжелой ударной нагрузке с возможностью заклинивания вала редуктора сервис фактор выбирается: sf = 2 и более.
Передаточное отношение и как его определить?
Основное назначение любого редуктора понижение угловой скорости подводимой на его входной вал. Значения выходной скорости определятся передаточным отношением редуктора. Передаточное отношение редуктора — это отношение скорости входного вала к скорости выходного вала.
использования с TypeScript | Redux
#Overview
TypeScript — это типизированный надмножество JavaScript. В последнее время он стал популярным в приложениях из-за преимуществ, которые он может принести. Если вы новичок в TypeScript, настоятельно рекомендуется сначала ознакомиться с ним, прежде чем продолжить. Вы можете ознакомиться с его документацией здесь.
TypeScript может принести следующие преимущества приложению Redux:
- Безопасность типов для редукторов, создателей состояний и действий и компонентов пользовательского интерфейса
- Легкий рефакторинг типизированного кода
- Превосходный опыт разработчика в командной среде
# Примечания и соображения
- Хотя мы официально рекомендуем использовать статическую типизацию с Redux, использование TypeScript имеет компромиссы с точки зрения настройки, количества написанного кода и удобочитаемости.TypeScript, вероятно, принесет чистую выгоду в более крупных приложениях, или кодовые базы должны поддерживаться многими людьми с течением времени, но может показаться слишком большим объемом накладных расходов в небольших проектах. Найдите время, чтобы оценить компромиссы и решить, стоит ли использовать TS в вашем собственном приложении.
- Эта страница в основном описывает добавление проверки типа для ядра Redux и дает только более короткие примеры использования TS с другими библиотеками Redux. Дополнительную информацию см. В соответствующей документации.
- Существует несколько возможных подходов к проверке типов кода Redux.Эта страница демонстрирует некоторые из распространенных и рекомендуемых подходов для упрощения работы и не является исчерпывающим руководством.
#A Practical Example
Мы рассмотрим упрощенное приложение чата, чтобы продемонстрировать возможный подход для включения статической типизации. В этом приложении чата будет два редуктора. Редуктор чата сосредоточится на хранении истории чата, а системный редуктор сосредоточится на хранении информации о сеансе.
Полный исходный код доступен наcodeandbox здесь.Обратите внимание, что, пройдя этот пример самостоятельно, вы ощутите некоторые преимущества использования TypeScript.
# Состояние проверки типа
Добавление типов к каждому фрагменту состояния — хорошее место для начала, поскольку оно не зависит от других типов. В этом примере мы начинаем с описания фрагмента состояния редуктора чата:
Копироватьинтерфейс экспорта Сообщение {
пользователь: строка
сообщение: строка
метка времени: номер
}
интерфейс экспорта ChatState {
сообщения: сообщение []
}
А затем сделайте то же самое для среза состояния системного редуктора:
Скопируйтеинтерфейс экспорта SystemState {
loggedIn: логический
session: string
userName: string
}
Обратите внимание, что мы экспортируют эти интерфейсы, чтобы использовать их позже в редюсерах и создателях действий.
#Type Checking Actions & Action Creators
Мы будем использовать строковые литералы и использовать typeof
для объявления наших констант действий и выводимых типов. Обратите внимание, что здесь мы идем на компромисс, когда объявляем наши типы в отдельном файле. В обмен на разделение наших типов в отдельный файл мы можем сосредоточить другие наши файлы на их назначении. Хотя этот компромисс может улучшить ремонтопригодность кодовой базы, совершенно нормально организовать свой проект так, как вы считаете нужным.
Константы и форма действия чата:
Копироватьexport const SEND_MESSAGE = ‘SEND_MESSAGE’
export const DELETE_MESSAGE = ‘DELETE_MESSAGE’
interface SendMessageAction {
type: typeof SEND_MESSAGE
: сообщение
{type: typeof DELETE_MESSAGE
meta: {
timestamp: number
}
}
тип экспорта ChatActionTypes = SendMessageAction | DeleteMessageAction
Обратите внимание, что здесь мы используем TypeScript Union Type для выражения всех возможных действий.
С объявлением этих типов теперь мы также можем ввести создателей действий чата проверки. В этом случае мы используем вывод TypeScript:
Скопируйтеimport {Message, SEND_MESSAGE, DELETE_MESSAGE, ChatActionTypes} из ‘./types’
функцию экспорта sendMessage (newMessage: Message): ChatActionTypes {
return {
type : SEND_MESSAGE,
полезная нагрузка: newMessage
}
}
функция экспорта deleteMessage (отметка времени: число): ChatActionTypes {
возврат {
тип: DELETE_MESSAGE,
мета: {мета времени }}
Системные константы действия и форма:
Копироватьexport const UPDATE_SESSION = ‘UPDATE_SESSION’
interface UpdateSessionAction {
type: typeof UPDATE_SESSION
payload: SystemStatepes
export
SessionС этими типами теперь мы также можем ввести систему проверки ‘ Создатели действий:
Скопируйтеimport {SystemState, UPDATE_SESSION, SystemActionTypes} из ‘./ types ‘
функция экспорта updateSession (newSession: SystemState): SystemActionTypes {
return {
type: UPDATE_SESSION,
payload: newSession
}
}
#Type Checking 9000 Редукторы просто функции 9004 которые принимают предыдущее состояние, действие, а затем возвращают следующее состояние. В этом примере мы явно объявляем тип действий, которые этот редуктор будет получать, а также то, что он должен вернуть (соответствующий фрагмент состояния).Благодаря этим дополнениям TypeScript придаст богатый интеллект свойствам наших действий и состояний. Кроме того, мы также будем получать ошибки, когда в определенном случае не возвращается ChatState
. Тип проверенного редуктора чата:
Копировать import {
ChatState,
ChatActionTypes,
SEND_MESSAGE,
DELETE_MESSAGE
} from ‘./types’
constate initialState:
constate initialState: messages:
}
функция экспорта chatReducer (
state = initialState,
action: ChatActionTypes
): ChatState {
switch (action.type) {
case SEND_MESSAGE:
return {
messages: [… state.messages, action.payload]
}
case DELETE_MESSAGE:
return {
messages: state.messages.filter (
message => message.timestamp! == action.meta.timestamp
)
}
по умолчанию:
состояние возврата
}
}
Тип проверенного системного редуктора:
Копировать import {SystemState, SystemActionTypes, UPDATE_SESSION} из ‘./ types ‘
const initialState: SystemState = {
loggedIn: false,
session:’ ‘,
userName:’ ‘
}
функция экспорта systemReducer (
state = initialState,
action: SystemActionTypes
): SystemState {
switch (action.type) {
case UPDATE_SESSION: {
return {
… state,
… action.payload
}
}
по умолчанию:
return state
}
}
Теперь нам нужно сгенерировать функцию корневого редуктора, что обычно выполняется с помощью combReducers
.Обратите внимание, что нам не нужно явно объявлять новый интерфейс для RootState. Мы можем использовать ReturnType
, чтобы вывести форму состояния из rootReducer
.
Скопируйте import {systemReducer} из ‘./system/reducers’
import {chatReducer} из ‘./chat/reducers’
const rootReducer = combReducers ({
system: systemReducer,
chat: chat: })
тип экспорта RootState = ReturnType
#Usage with React Redux
Хотя React Redux — это отдельная библиотека от самого Redux, она обычно используется с React.
Полное руководство о том, как правильно использовать React-Redux с TypeScript, можно найти на странице «Статическая печать» в документации React-Redux . В этом разделе будут выделены стандартные шаблоны.
React-Redux не поставляется с собственными определениями типов. Если вы используете Typescript, вам следует установить определения типа @ types / response-redux
из npm. Помимо набора функций библиотеки, типы также экспортируют некоторые помощники, чтобы упростить написание безопасных интерфейсов между вашим хранилищем Redux и вашими компонентами React.
# Ввод хука useSelector
Объявите тип параметра состояния
в функции селектора, и тип возврата useSelector
будет выведен в соответствии с типом возврата селектора:
Копировать interface RootState {
isOn: boolean
}
const selectIsOn = (state: RootState) => state.isOn
const isOn = useSelector (selectIsOn)
# Ввод useDispatch
hook
По умолчанию возвращается значение . useDispatch
— это стандартный тип Dispatch
, определенный базовыми типами Redux, поэтому объявления не требуются:
Copy const dispatch = useDispatch ()
# Ввод connect
компонент более высокого порядка
Используйте ConnectedProps Тип
, экспортированный @ types / react-redux ^ 7.1.2
, чтобы вывести типы опор из , подключите
автоматически. Для этого необходимо разделить вызов connect (mapState, mapDispatch) (MyComponent)
на две части:
Копировать import {connect, ConnectedProps} из ‘react-redux’
интерфейс RootState {
isOn: boolean
}
const mapState = (state: RootState) => ({
isOn: state.isOn
})
const mapDispatch = {
toggleOn: () => ({type: ‘TOGGLE_IS_ON’})
}
const connector = connect (mapState, mapDispatch)
type PropsFromRedux = ConnectedProps
type Props = PropsFromRedux & {
backgroundColor: string
}
const MyComponent = (props):
Переключить на {props.isOn? ‘ON’: ‘OFF’}
)
коннектор экспорта по умолчанию (MyComponent)
#Usage with Redux Thunk
Redux Thunk — это обычно используемое промежуточное программное обеспечение для записи синхронизации и асинхронная логика, которая взаимодействует с хранилищем Redux. Вы можете ознакомиться с его документацией здесь. Преобразователь — это функция, которая возвращает другую функцию, которая принимает параметры dispatch
и getState
.Redux Thunk имеет встроенный тип ThunkAction
, который мы можем использовать для определения типов для этих аргументов:
Копировать import {Action} из ‘redux’
import {sendMessage} из ‘./store/chat/actions’
import {RootState} из ‘./store’
import {ThunkAction} из ‘redux-thunk’
export const thunkSendMessage = (
message: string
): ThunkAction > => async dispatch => {
const asyncResp = await exampleAPI ()
dispatch (
sendMessage ({
сообщение,
пользователь: asyncResp,
отметка времени: новая дата ()).getTime ()
})
)
}
function exampleAPI () {
return Promise.resolve (‘Async Chat Bot’)
}
Чтобы уменьшить количество повторений, вы можете захотеть определить многоразовый AppThunk
введите один раз в файле хранилища, а затем используйте этот тип всякий раз, когда вы пишете преобразователь:
Копировать тип экспорта AppThunk = ThunkAction <
ReturnType,
RootState,
unknown,
Action
>
Настоятельно рекомендуется использовать создателей действий в вашей рассылке, поскольку мы можем повторно использовать уже проделанную работу для проверки типов этих функций.
#Usage with Redux Toolkit
Официальный пакет Redux Toolkit написан на TypeScript и предоставляет API, предназначенные для хорошей работы в приложениях TypeScript.
#Typing configureStore
configureStore
определяет тип значения состояния на основе предоставленной функции корневого редуктора, поэтому никаких конкретных объявлений типа не требуется. Однако вы можете захотеть экспортировать тип store.dispatch
, в который уже должны быть включены промежуточные типы Thunk:
Copy const store = configureStore ({
reducer: rootReducer
})
тип экспорта AppDispatch = Тип магазина.dispatch
#Typing createAction
createAction
требует, чтобы тип полезной нагрузки был явно определен, если полезная нагрузка не требуется:
Копировать const add = createAction (1)
#Typing createReducer
createReducer
выведет тип своего значения состояния из аргумента initialState
. Типы действий должны быть объявлены явно:
Копировать const initialState: number = 0
const counterReducer = createReducer (initialState, {
increment: (state, action: PayloadAction ) => state + action.payload
})
#Typing createSlice
Подобно createReducer
, createSlice
будет выводить тип своего значения состояния из аргумента initialState
. Типы действий должны быть объявлены явно и будут повторно использоваться для создателей созданных действий:
Копировать const counterSlice = createSlice ({
name: ‘counter’,
initialState: 0 как число,
редукторов: {
приращение (состояние, действие: PayloadAction <число>) {
возврат состояния + действие.полезная нагрузка
}
}
})
#Resources
Для получения дополнительной информации см. следующие дополнительные ресурсы:
- Документация библиотеки Redux:
- Руководства по React + Redux + TypeScript:
- Другие статьи:
. комбайнРедукторы | Redux
По мере того, как ваше приложение становится более сложным, вы захотите разделить свою функцию сокращения на отдельные функции, каждая из которых управляет независимыми частями состояния.
Вспомогательная функция combReducers
превращает объект, значениями которого являются различные уменьшающие функции, в единую уменьшающую функцию, которую вы можете передать в createStore
.
Результирующий редуктор вызывает каждый дочерний редуктор и собирает их результаты в один объект состояния. Состояние, созданное commonReducers ().
— пространство имен каждого редуктора под их ключами, переданное в combReducers ()
Пример:
Копировать rootReducer = combReducers ({potato: potatoReducer, помидор}:
Reducer {
картофель: {
},
помидор: {
}
}
Вы можете управлять именами ключей состояния, используя разные ключи для редукторов в переданном объекте.Например, вы можете вызвать combReducers ({todos: myTodosReducer, counter: myCounterReducer})
, чтобы форма состояния была {todos, counter}
.
Популярное соглашение — называть редукторы после срезов состояния, которыми они управляют, поэтому вы можете использовать сокращенную запись свойств ES6: commonReducers ({counter, todos})
. Это эквивалентно записи combReducers ({counter: counter, todos: todos})
.
#A Примечание для пользователей Flux
Эта функция помогает вам организовать ваши редукторы для управления их собственными срезами состояния, подобно тому, как у вас есть разные хранилища Flux для управления различным состоянием.В Redux есть только одно хранилище, но combReducers
поможет вам сохранить такое же логическое разделение между редукторами.
#Arguments
-
reducer
( Object ): объект, значения которого соответствуют различным функциям сокращения, которые необходимо объединить в одну. В примечаниях ниже приведены некоторые правила, которым должен следовать каждый переданный редуктор.
Более ранняя документация предлагала использовать ES6 import * как синтаксис редюсеров
для получения объекта редюсеров.Это было источником большой путаницы, поэтому теперь мы рекомендуем вместо этого экспортировать один редуктор, полученный с помощью commonReducers ()
, из reducers / index.js
. Пример приведен ниже.
#Returns
(функция ): редуктор, который вызывает каждый редуктор внутри объекта reducer
и создает объект состояния с той же формой.
#Notes
Эта функция слегка самоуверенна и направлена на то, чтобы помочь новичкам избежать распространенных ошибок.Вот почему он пытается обеспечить соблюдение некоторых правил, которым вы не обязаны следовать, если вы пишете корневой редуктор вручную.
Любой редуктор, переданный в commonReducers
, должен удовлетворять этим правилам:
Для любого действия, которое не распознано, он должен вернуть состояние
, данное ему в качестве первого аргумента.
Он никогда не должен возвращать undefined
. Слишком легко сделать это по ошибке с помощью раннего оператора return
, поэтому combReducers
выдает, если вы это сделаете, вместо того, чтобы позволить ошибке проявиться где-то еще.
Если присвоенное ему состояние
равно undefined
, он должен вернуть начальное состояние для этого конкретного редуктора. Согласно предыдущему правилу, начальное состояние также не должно быть undefined
. Его удобно указать с помощью синтаксиса необязательных аргументов ES6, но вы также можете явно проверить первый аргумент на предмет undefined
.
В то время как commonReducers
пытается проверить, соответствуют ли ваши редукторы некоторым из этих правил, вы должны помнить их и делать все возможное, чтобы им следовать. combReducers
проверит ваши редукторы, передав им undefined
; это выполняется, даже если вы укажете начальное состояние для Redux.createStore (commonReducers (...), initialState)
. Следовательно, вы должны обеспечить правильную работу редукторов при получении undefined
в качестве состояния, даже если вы никогда не собираетесь, чтобы они фактически получали undefined
в вашем собственном коде.
#Example
# reducers / todos.js
Копировать экспорт функций по умолчанию todos (state = [], action) {
switch (action.type) {
case ‘ADD_TODO’:
return state.concat ([action.text])
default:
return state
}
}
# redurs / counter.js
Copy счетчик функции экспорта по умолчанию (состояние = 0, действие) {
переключатель (действие.тип) {
case ‘INCREMENT’:
return state + 1
case ‘DECREMENT’:
return state — 1
default :
return state
}
}
# редукторы / index.js
Копировать import {combReducers} из redux
import todos from ‘./todos’
import counter from ‘./counter’
export default combReducers ({
todos,
counter}
counter )
# App.js
Скопируйте import {createStore} из ‘redux’
import reducer из ‘./reducers/index’
const store = createStore (reducer)
console.log (store.getState ())
магазин.dispatch ({
type: ‘ADD_TODO’,
text: ‘Use Redux’
})
console.log (store.getState ())
#Tips
Этот помощник — просто удобство! Вы можете написать свой собственный combReducers
, который работает по-другому, или даже вручную собрать объект состояния из дочерних редукторов и явно написать корневую функцию сокращения, как если бы вы написали любую другую функцию.
Вы можете позвонить combReducers
на любом уровне иерархии редукторов.Это не обязательно должно происходить наверху. Фактически, вы можете использовать его снова, чтобы разделить слишком сложные дочерние редукторы на независимых внуков и так далее.
. асинхронных действий | Redux
Хотя концепции, изложенные в «Базовом» и «Расширенном» учебниках, все еще актуальны, эти страницы являются одними из самых старых частей нашей документации. Вскоре мы обновим эти руководства, чтобы улучшить объяснения и показать некоторые шаблоны, которые проще и проще использовать. Следите за этими обновлениями. Мы также реорганизуем нашу документацию, чтобы упростить поиск информации.
Мы рекомендуем начать с учебника Redux Essentials , поскольку он охватывает ключевые моменты, которые вам нужно знать о том, как начать использовать Redux для написания реальных приложений.
В руководстве по основам мы создали простое приложение для задач. Это было полностью синхронно. Каждый раз при отправке действия состояние обновлялось немедленно.
В этом руководстве мы создадим другое асинхронное приложение. Он будет использовать API Reddit для отображения текущих заголовков для выбранного субреддита. Как асинхронность вписывается в поток Redux?
#Actions
Когда вы вызываете асинхронный API, есть два важных момента во времени: момент, когда вы начинаете вызов, и момент, когда вы получаете ответ (или тайм-аут).
Каждый из этих двух моментов обычно требует изменения состояния приложения; для этого вам нужно отправить обычные действия, которые будут обрабатываться редукторами синхронно. Обычно для любого запроса API вы хотите отправить по крайней мере три различных типа действий:
Действие, информирующее редукторы о начале запроса.
Редукторы могут обрабатывать это действие путем переключения флага isFetching
в состоянии. Таким образом, пользовательский интерфейс знает, что пора показать счетчик.
Действие, информирующее редукторы об успешном завершении запроса.
Редукторы могут обрабатывать это действие путем объединения новых данных в состояние, которым они управляют, и сброса isFetching
. Пользовательский интерфейс скрывал счетчик и отображал полученные данные.
Действие, информирующее редукторы о сбое запроса.
Редукторы могут обработать это действие, сбросив isFetching
.Кроме того, некоторые редукторы могут захотеть сохранить сообщение об ошибке, чтобы пользовательский интерфейс мог его отобразить.
Вы можете использовать специальное поле статуса
в своих действиях:
Копировать {type: ‘FETCH_POSTS’}
{type: ‘FETCH_POSTS’, status: ‘error’, error: ‘Oops’}
{type: ‘FETCH_POSTS’, статус: ‘success’, response: {…}}
Или вы можете определить для них отдельные типы:
Copy {type: ‘FETCH_POSTS_REQUEST’}
{type: ‘FETCH_POSTS_FAILURE’ , ошибка: ‘Oops’}
{тип: ‘FETCH_POSTS_SUCCESS’, ответ: {…}}
Выбор того, использовать ли один тип действия с флагами или несколько типов действий, зависит от вас. Это соглашение, которое вам нужно решить вместе со своей командой. Множественные типы оставляют меньше места для ошибки, но это не проблема, если вы генерируете создатели действий и редукторы с помощью вспомогательной библиотеки, такой как redux-actions.
Какое бы соглашение вы ни выбрали, придерживайтесь его на протяжении всего приложения.
В этом уроке мы будем использовать отдельные типы.
#Synchronous Action Creators
Давайте начнем с определения нескольких типов синхронных действий и создателей действий, которые нам нужны в нашем примере приложения.Здесь пользователь может выбрать субреддит для отображения:
# actions.js
(синхронный)
Копировать export const SELECT_SUBREDDIT = ‘SELECT_SUBREDDIT’
функция экспорта selectSubreddit (subreddit) {
return {
return {
return {
return {
return {
return {
return {
return {
) ,
subreddit
}
}
Они также могут нажать кнопку «обновить», чтобы обновить его:
Copy export const INVALIDATE_SUBREDDIT = ‘INVALIDATE_SUBREDDIT’
export function invalidateSubreddit 92000 {
export function invalidateSubreddit 92000 (возврат 92000) type: INVALIDATE_SUBREDDIT,
subreddit
}
}
Это были действия, регулируемые взаимодействием с пользователем.У нас также будет другой вид действий, управляемый сетевыми запросами. Мы увидим, как их отправлять позже, а пока мы просто хотим их определить.
Когда пришло время получить сообщения для какого-то субреддита, мы отправим действие REQUEST_POSTS
:
Копировать export const REQUEST_POSTS = ‘REQUEST_POSTS’
function requestPosts (subreddit) {
return {
9000_POSTS type: REQUEST_POSTS type: subreddit
}
}
Важно, чтобы он был отделен от SELECT_SUBREDDIT
или INVALIDATE_SUBREDDIT
.Хотя они могут происходить один за другим, по мере того, как приложение становится более сложным, вам может потребоваться получить некоторые данные независимо от действий пользователя (например, для предварительной выборки наиболее популярных субреддитов или для обновления устаревших данных время от времени). Вы также можете выполнить выборку в ответ на изменение маршрута, поэтому нецелесообразно сразу связывать выборку с каким-либо конкретным событием пользовательского интерфейса.
Наконец, когда поступит сетевой запрос, мы отправим RECEIVE_POSTS
:
Copy export const RECEIVE_POSTS = ‘RECEIVE_POSTS’
function receivePosts (subreddit, json) {
return {
type:
type: RECEIVE_POSTS subreddit,
сообщений: json.data.children.map (child => child.data),
ReceivedAt: Date.now ()
}
}
Это все, что нам нужно знать на данный момент. Конкретный механизм отправки этих действий вместе с сетевыми запросами будет обсуждаться позже.
# Примечание по обработке ошибок
В реальном приложении вы также можете отправить действие при сбое запроса. Мы не будем реализовывать обработку ошибок в этом руководстве, но реальный пример показывает один из возможных подходов.
#Designing the State Shape
Как и в базовом руководстве, вам необходимо спроектировать форму состояния вашего приложения, прежде чем приступать к реализации. С асинхронным кодом нужно заботиться о большем количестве состояний, поэтому нам нужно все продумать.
Эта часть часто сбивает с толку новичков, потому что не сразу понятно, какая информация описывает состояние асинхронного приложения и как организовать ее в едином дереве.
Начнем с наиболее распространенного варианта использования: списков.Веб-приложения часто показывают списки вещей. Например, список сообщений или список друзей. Вам нужно будет выяснить, какие списки может отображать ваше приложение. Вы хотите хранить их отдельно в состоянии, потому что таким образом вы можете кэшировать их и получать повторно только при необходимости.
Вот как может выглядеть форма состояния для нашего приложения «Заголовки Reddit»:
Копировать {
selectedSubreddit: ‘frontend’,
postsBySubreddit: {
frontend: {
isFetching: did
false, элементов: []
},
reactjs: {
isFetching: false,
didInvalidate: false,
lastUpdated: 1439478405547,
элементов: [id
{
{
] title: «Путаница в отношении Flux и Relay»
},
{
id: 500,
title: «Создание простого приложения с использованием React JS и архитектуры Flux»
}
]
}
}
}
Здесь есть несколько важных битов:
Мы остановились re каждый сабреддит отдельно, чтобы мы могли кэшировать каждый сабреддит.Когда пользователь переключается между ними во второй раз, обновление будет мгновенным, и нам не нужно будет обновлять данные, если мы этого не хотим. Не беспокойтесь о том, что все эти элементы находятся в памяти: если вы не имеете дело с десятками тысяч элементов, и ваш пользователь редко закрывает вкладку, вам не потребуется никакой очистки.
Для каждого списка элементов вы захотите сохранить isFetching
, чтобы показать счетчик, didInvalidate
, чтобы вы могли позже переключать его, когда данные устарели, lastUpdated
, чтобы вы знали, когда он был получен в прошлый раз и сами штук.В реальном приложении вы также захотите сохранить состояние разбивки на страницы, например fetchedPageCount
и nextPageUrl
.
# Примечание о вложенных объектах
В этом примере мы сохраняем полученные элементы вместе с информацией о разбиении на страницы. Однако этот подход не будет работать, если у вас есть вложенные сущности, ссылающиеся друг на друга, или если вы позволяете пользователю редактировать элементы. Представьте, что пользователь хочет отредактировать полученный пост, но этот пост дублируется в нескольких местах в дереве состояний.Это было бы очень болезненно реализовать.
Если у вас есть вложенные сущности или если вы позволяете пользователям редактировать полученные сущности, вы должны хранить их отдельно в состоянии, как если бы это была база данных. В информации о нумерации страниц вы будете обращаться к ним только по их идентификаторам. Это позволяет вам всегда поддерживать их в актуальном состоянии. Реальный пример демонстрирует этот подход вместе с normalizr для нормализации вложенных ответов API. При таком подходе ваше состояние может выглядеть следующим образом:
Копировать {
selectedSubreddit: 'frontend',
entity: {
users: {
2: {
id: 2,
name: 'Andrew '
}
},
сообщений: {
42: {
id: 42,
title:' Путаница в отношении потока и реле ',
автор: 2
},
100: {
id: 100,
title: 'Создание простого приложения с использованием React JS и Flux Architecture',
автор: 2
}
}
},
сообщений BySubreddit: {
frontend: {
isFetching: true, didInvalidate: false,
элементов: []
},
reactjs: {
isFetching: false,
didInvalidate: false,
lastUpdated: 1439478405547,
items: [42, 100]
}
}
}
В этом руководстве мы не будем нормализовать сущности, но это то, что вы должны учитывать для более динамичное приложение.
#Handling Actions
Прежде чем углубляться в детали диспетчеризации действий вместе с сетевыми запросами, мы напишем редукторы для действий, которые мы определили выше.
# Примечание о составе редуктора
Здесь мы предполагаем, что вы понимаете состав редуктора с помощью combReducers ()
, как описано в разделе «Разделение редукторов» в руководстве по основам. Если нет, прочтите сначала.
# redurs.js
Скопируйте import {combReducers} из 'redux'
import {
SELECT_SUBREDDIT,
INVALIDATE_SUBREDDIT,
REQUEST_POSTS
REQUEST_POSTS
_POSTS,_POSTS./actions ' function selectedSubreddit (state =' reactjs ', action) {
switch (action.type) {
case SELECT_SUBREDDIT:
return action.subreddit
default:
return state
}
}
сообщений функции (
состояние = {
isFetching: false,
didInvalidate: false,
элементов: []
},
действие
) {
переключатель (действие.type) {
case INVALIDATE_SUBREDDIT:
return Object.assign ({}, state, {
didInvalidate: true
})
case REQUEST_POSTS:
return Object.assign ({}, state
isFetching: true, didInvalidate: false
})
case RECEIVE_POSTS:
return Object.assign ({}, состояние, {
isFetching: false,
didInvalidate: false,
items: action.posts,
lastUpdated: action.receivedAt
})
по умолчанию:
return state
}
}
function postsBySubreddit (state = {}, action) {
switch (action.type) {
switch (action.type) { case INVALIDATE_SUBREDDIT:
case RECEIVE_POSTS:
case REQUEST_POSTS:
return Object.assign ({}, состояние, {
[action.subreddit]: posts (state [action.subreddit], действие)
})
по умолчанию:
возврат состояния
}
}
const rootReducer =commonReducers ({
postsBySubreddit,
postsBySubreddit,
discover
000000 по умолчанию
00030002000) export В этом коде есть две интересные части: Мы используем синтаксис вычисленных свойств ES6, поэтому мы можем обновить состояние [action.subreddit]
с помощью объекта .assign ()
кратко. Это:
Копировать return Object.assign ({}, state, {
[action.subreddit]: posts (state [action.subreddit], action)
})
эквивалентно этому:
Copy let nextState = {}
nextState [action.subreddit] = posts (state [action.subreddit], action)
return Object.assign ({}, state, nextState)
Мы извлекли сообщений (состояние, действие )
, который управляет состоянием определенного списка сообщений.Это просто состав редуктора! Это наш выбор, как разделить редуктор на меньшие редукторы, и в этом случае мы делегируем обновление элементов внутри объекта редуктору сообщений
. Реальный пример идет еще дальше, показывая, как создать фабрику редукторов для параметризованных редукторов разбиения на страницы.
Помните, что редукторы - это просто функции, поэтому вы можете использовать функциональную композицию и функции более высокого порядка столько, сколько вам удобно.
#Async Action Creators
Наконец, как мы можем использовать создателей синхронных действий, которые мы определили ранее, вместе с сетевыми запросами? Стандартный способ сделать это с Redux - использовать промежуточное ПО Redux Thunk.Он поставляется в отдельной упаковке под названием redux-thunk
. Мы объясним, как работает промежуточное программное обеспечение в целом позже; на данный момент вам нужно знать только одну важную вещь: с помощью этого конкретного промежуточного программного обеспечения создатель действия может вернуть функцию вместо объекта действия. Таким образом, создатель действия становится преобразователем.
Когда создатель действия возвращает функцию, эта функция будет выполняться промежуточным программным обеспечением Redux Thunk. Эта функция не обязательно должна быть чистой; таким образом, разрешены побочные эффекты, включая выполнение асинхронных вызовов API.Функция также может отправлять действия, подобные тем синхронным действиям, которые мы определили ранее.
Мы все еще можем определить этих специальных создателей действий преобразователя в нашем файле actions.js
:
# actions.js
(Асинхронный)
Копировать import fetch из 'cross-fetch'
export const REQUEST_POSTS = 'REQUEST_POSTS '
function requestPosts (subreddit) {
return {
type: REQUEST_POSTS,
subreddit
}
}
export const RECEIVE_POSTS =' RECEIVE_POSTS '
9000 subreddit, function receivedit
{ типа: RECEIVE_POSTS,
subreddit,
сообщений: json.data.children.map (child => child.data),
ReceivedAt: Date.now ()
}
}
export const INVALIDATE_SUBREDDIT = 'INVALIDATE_SUBREDDIT'
export function invalidateSubreddit 2 (возврат
) {
тип: INVALIDATE_SUBREDDIT,
subreddit
}
}
функция экспорта fetchPosts (subreddit) {
функция возврата (отправка) {
dispatch (requestPosts) возврат
(requestPosts) возврат
(subreddit) // WWW.reddit.com/r / $ {subreddit} .json`). затем (
response => response.json ()
)
. затем (json =>
отправка (receivePosts (subreddit, json) )
)
}
}
# Обратите внимание на fetch
В примерах мы используем fetch
API. Это новый API для выполнения сетевых запросов, который заменяет XMLHttpRequest
для наиболее распространенных нужд.Поскольку большинство браузеров еще не поддерживают его изначально, мы предлагаем вам использовать cross-fetch библиотеку
:
Скопировать import fetch из 'cross-fetch'
Внутренне он использует полифил whatwg-fetch
на клиенте, и node-fetch
на сервере, поэтому вам не нужно будет изменять вызовы API, если вы сделаете свое приложение универсальным.
Имейте в виду, что любой полифил fetch
предполагает, что полифил Promise уже присутствует. Самый простой способ убедиться, что у вас есть полифилл Promise, - это включить полифил Babel ES6 в вашей точке входа перед запуском любого другого кода:
Как нам включить промежуточное ПО Redux Thunk в механизм отправки? Мы используем усилитель хранилища applyMiddleware ()
от Redux, как показано ниже:
# index.js
Копировать import thunkMiddleware из redux-thunk
import {createLogger} из 'redux-logger'
import {createStore, applyMiddleware} из 'redux'
import {selectSubreddit, fetchPosts} из './actions '
импортировать rootReducer из' ./reducers '
const loggerMiddleware = createLogger ()
const store = createStore (
rootReducer,
applyMiddleware (
9dle0002 thunkMiddleware000)
000
,dispatch (selectSubreddit ('reactjs')) store.dispatch (fetchPosts ('reactjs')). then (() => console.log (store.getState ()))
Хорошая особенность преобразователей в том, что они могут отправлять друг другу результаты:
# actions.js
(с выборкой
)
Копировать import fetch from 'cross-fetch'
export const REQUEST_POSTS = 'REQUEST_POSTS'
function requestPosts (subreddit) {
return {
тип: REQUEST_POSTS,
subreddit
}
}
export const RECEIVE_POSTS = 'RECEIVE_POSTS'
функция ReceiverPosts (subreddit, jsonred) {
0002 return type:_POSTS
return ,
сообщений: json.data.children.map (child => child.data),
ReceivedAt: Date.now ()
}
}
export const INVALIDATE_SUBREDDIT = 'INVALIDATE_SUBREDDIT'
export function invalidateSubreddit (возврат
) {
тип: INVALIDATE_SUBREDDIT,
subreddit
. действий | Redux
Хотя концепции, изложенные в «Базовом» и «Расширенном» учебниках, все еще актуальны, эти страницы являются одними из самых старых частей нашей документации. Вскоре мы обновим эти руководства, чтобы улучшить объяснения и показать некоторые шаблоны, которые проще и проще использовать. Следите за этими обновлениями. Мы также реорганизуем нашу документацию, чтобы упростить поиск информации.
Мы рекомендуем начать с учебника Redux Essentials , поскольку он охватывает ключевые моменты, которые вам нужно знать о том, как начать использовать Redux для написания реальных приложений.
Сначала давайте определим некоторые действия.
Действия - это полезные данные, которые отправляют данные из вашего приложения в ваш магазин. Они только источник информации для магазина. Вы отправляете их в магазин с помощью store.dispatch ()
.
Вот пример действия, которое представляет собой добавление нового элемента задачи:
Копировать const ADD_TODO = 'ADD_TODO'
Копировать {
тип: ADD_TODO,
текст: «Создать мое первое приложение Redux»
}
Действия являются простыми объектами JavaScript.Действия должны иметь свойство типа
, которое указывает тип выполняемого действия. Типы обычно следует определять как строковые константы. Когда ваше приложение станет достаточно большим, вы можете переместить их в отдельный модуль.
Скопируйте import {ADD_TODO, REMOVE_TODO} из '../actionTypes'
#Note on Boilerplate
Вам не нужно определять константы типа действия в отдельном файле или даже определять их вообще. Для небольшого проекта может быть проще просто использовать строковые литералы для типов действий.Однако явное объявление констант в больших базах кода дает некоторые преимущества. Прочтите Reducing Boilerplate, чтобы получить больше практических советов по поддержанию чистоты вашей кодовой базы.
Кроме типа
, структура объекта действия действительно зависит от вас. Если вам интересно, ознакомьтесь с рекомендациями по созданию действий в Flux Standard Action.
Мы добавим еще один тип действия, чтобы описать пользователя, отметившего задачу как выполненную. Мы ссылаемся на конкретное задание по индексу , индекс
, потому что мы храним их в массиве.В реальном приложении разумнее генерировать уникальный идентификатор каждый раз, когда создается что-то новое.
Копировать {
тип: TOGGLE_TODO,
index: 5
}
Рекомендуется передавать как можно меньше данных в каждое действие. Например, лучше передать индекс
, чем весь объект todo.
Наконец, мы добавим еще один тип действия для изменения видимых в данный момент задач.
Копировать {
тип: SET_VISIBILITY_FILTER,
фильтр: SHOW_COMPLETED
}
#Action Creators
Создатели действий - это именно те функции, которые создают действия.Термины «действие» и «создатель действия» легко объединить, поэтому постарайтесь использовать правильный термин.
В Redux создатели действий просто возвращают действие:
Копировать function addTodo (text) {
return {
type: ADD_TODO,
text
}
}
Это делает их портативными и легко тестируемыми ,
В традиционном Flux создатели действий часто запускают отправку при вызове, например:
Копировать, функция addTodoWithDispatch (текст) {
const action = {
type: ADD_TODO,
text
}
dispatch )
}
В Redux это , а не .Вместо этого, чтобы фактически инициировать отправку, передайте результат в функцию dispatch ()
:
Копировать dispatch (addTodo (text))
dispatch (completeTodo (index))
В качестве альтернативы вы можете создать связанное действие Creator , который автоматически отправляет:
Копировать const boundAddTodo = text => dispatch (addTodo (text))
const boundCompleteTodo = index => dispatch (completeTodo (index))
Теперь вы можете вызывать их напрямую:
Копировать boundAddTodo (текст)
boundCompleteTodo (index)
К функции dispatch ()
можно получить доступ непосредственно из магазина как store.dispatch ()
, но, скорее всего, вы получите к нему доступ с помощью помощника, такого как react-redux connect ()
. Вы можете использовать bindActionCreators ()
для автоматической привязки многих создателей действий к функции dispatch ()
.
Создатели действий также могут быть асинхронными и иметь побочные эффекты. Вы можете прочитать об асинхронных действиях в расширенном руководстве, чтобы узнать, как обрабатывать ответы AJAX и объединять создателей действий в поток асинхронного управления. Не переходите к асинхронным действиям до тех пор, пока не пройдете базовое руководство, так как оно охватывает другие важные концепции, необходимые для расширенного руководства и асинхронных действий.
# Исходный код
# actions.js
Копировать export const ADD_TODO = 'ADD_TODO'
export const TOGGLE_TODO = 'TOGGLE_TODO'
export const SET_VISIBILITY_FILTER =
000_VISIBILITY_FILTER = 9 SET_VISIBILITY_FILTER = 9 SET_VISIBILITY_FILTER = 9 SET_FILTER 9 SHOW_ALL: 'SHOW_ALL',
SHOW_COMPLETED: 'SHOW_COMPLETED',
SHOW_ACTIVE: 'SHOW_ACTIVE'
}
функция экспорта addTodo (текст) {
функция экспорта {тип:
}
000 return function {type:
}
000 функция экспорта toggleTodo (index) {
return {type: TOGGLE_TODO, index}
}
функция экспорта setVisibilityFilter (filter) {
return {type: SET_VISIBILITY_FILTER, filter}
}
#Next2 Теперь определите #Next2 некоторые редукторы, чтобы указать, как обновляется состояние при отправке этих действий!.
combReducers
.Обратите внимание, что нам не нужно явно объявлять новый интерфейс для RootState. Мы можем использовать ReturnType
, чтобы вывести форму состояния из rootReducer
. @ types / response-redux
из npm. Помимо набора функций библиотеки, типы также экспортируют некоторые помощники, чтобы упростить написание безопасных интерфейсов между вашим хранилищем Redux и вашими компонентами React.
в функции селектора, и тип возврата useSelector
будет выведен в соответствии с типом возврата селектора: useDispatch
hook . useDispatch
— это стандартный тип Dispatch
, определенный базовыми типами Redux, поэтому объявления не требуются: connect
компонент более высокого порядка ConnectedProps Тип
, экспортированный @ types / react-redux ^ 7.1.2
, чтобы вывести типы опор из , подключите
автоматически. Для этого необходимо разделить вызов connect (mapState, mapDispatch) (MyComponent)
на две части:
Переключить на {props.isOn? ‘ON’: ‘OFF’}
dispatch
и getState
.Redux Thunk имеет встроенный тип ThunkAction
, который мы можем использовать для определения типов для этих аргументов: AppThunk
введите один раз в файле хранилища, а затем используйте этот тип всякий раз, когда вы пишете преобразователь: configureStore
configureStore
определяет тип значения состояния на основе предоставленной функции корневого редуктора, поэтому никаких конкретных объявлений типа не требуется. Однако вы можете захотеть экспортировать тип store.dispatch
, в который уже должны быть включены промежуточные типы Thunk: createAction
createAction
требует, чтобы тип полезной нагрузки был явно определен, если полезная нагрузка не требуется: createReducer
createReducer
выведет тип своего значения состояния из аргумента initialState
. Типы действий должны быть объявлены явно: createSlice
createReducer
, createSlice
будет выводить тип своего значения состояния из аргумента initialState
. Типы действий должны быть объявлены явно и будут повторно использоваться для создателей созданных действий: combReducers
превращает объект, значениями которого являются различные уменьшающие функции, в единую уменьшающую функцию, которую вы можете передать в createStore
.commonReducers ().
— пространство имен каждого редуктора под их ключами, переданное в combReducers ()
combReducers ({todos: myTodosReducer, counter: myCounterReducer})
, чтобы форма состояния была {todos, counter}
.commonReducers ({counter, todos})
. Это эквивалентно записи combReducers ({counter: counter, todos: todos})
.#A Примечание для пользователей Flux
Эта функция помогает вам организовать ваши редукторы для управления их собственными срезами состояния, подобно тому, как у вас есть разные хранилища Flux для управления различным состоянием.В Redux есть только одно хранилище, но combReducers
поможет вам сохранить такое же логическое разделение между редукторами.
reducer
( Object ): объект, значения которого соответствуют различным функциям сокращения, которые необходимо объединить в одну. В примечаниях ниже приведены некоторые правила, которым должен следовать каждый переданный редуктор. Более ранняя документация предлагала использовать ES6 import * как синтаксис редюсеров
для получения объекта редюсеров.Это было источником большой путаницы, поэтому теперь мы рекомендуем вместо этого экспортировать один редуктор, полученный с помощью commonReducers ()
, из reducers / index.js
. Пример приведен ниже.
reducer
и создает объект состояния с той же формой.commonReducers
, должен удовлетворять этим правилам: Для любого действия, которое не распознано, он должен вернуть состояние
, данное ему в качестве первого аргумента.
Он никогда не должен возвращать undefined
. Слишком легко сделать это по ошибке с помощью раннего оператора return
, поэтому combReducers
выдает, если вы это сделаете, вместо того, чтобы позволить ошибке проявиться где-то еще.
Если присвоенное ему состояние
равно undefined
, он должен вернуть начальное состояние для этого конкретного редуктора. Согласно предыдущему правилу, начальное состояние также не должно быть undefined
. Его удобно указать с помощью синтаксиса необязательных аргументов ES6, но вы также можете явно проверить первый аргумент на предмет undefined
.
commonReducers
пытается проверить, соответствуют ли ваши редукторы некоторым из этих правил, вы должны помнить их и делать все возможное, чтобы им следовать. combReducers
проверит ваши редукторы, передав им undefined
; это выполняется, даже если вы укажете начальное состояние для Redux.createStore (commonReducers (...), initialState)
. Следовательно, вы должны обеспечить правильную работу редукторов при получении undefined
в качестве состояния, даже если вы никогда не собираетесь, чтобы они фактически получали undefined
в вашем собственном коде. reducers / todos.js
redurs / counter.js
редукторы / index.js
App.js
Этот помощник — просто удобство! Вы можете написать свой собственный combReducers
, который работает по-другому, или даже вручную собрать объект состояния из дочерних редукторов и явно написать корневую функцию сокращения, как если бы вы написали любую другую функцию.
Вы можете позвонить combReducers
на любом уровне иерархии редукторов.Это не обязательно должно происходить наверху. Фактически, вы можете использовать его снова, чтобы разделить слишком сложные дочерние редукторы на независимых внуков и так далее.
Действие, информирующее редукторы о начале запроса.
Редукторы могут обрабатывать это действие путем переключения флага isFetching
в состоянии. Таким образом, пользовательский интерфейс знает, что пора показать счетчик.
Действие, информирующее редукторы об успешном завершении запроса.
Редукторы могут обрабатывать это действие путем объединения новых данных в состояние, которым они управляют, и сброса isFetching
. Пользовательский интерфейс скрывал счетчик и отображал полученные данные.
Действие, информирующее редукторы о сбое запроса.
Редукторы могут обработать это действие, сбросив isFetching
.Кроме того, некоторые редукторы могут захотеть сохранить сообщение об ошибке, чтобы пользовательский интерфейс мог его отобразить.
в своих действиях: actions.js
(синхронный) REQUEST_POSTS
: SELECT_SUBREDDIT
или INVALIDATE_SUBREDDIT
.Хотя они могут происходить один за другим, по мере того, как приложение становится более сложным, вам может потребоваться получить некоторые данные независимо от действий пользователя (например, для предварительной выборки наиболее популярных субреддитов или для обновления устаревших данных время от времени). Вы также можете выполнить выборку в ответ на изменение маршрута, поэтому нецелесообразно сразу связывать выборку с каким-либо конкретным событием пользовательского интерфейса. RECEIVE_POSTS
:# Примечание по обработке ошибок
В реальном приложении вы также можете отправить действие при сбое запроса. Мы не будем реализовывать обработку ошибок в этом руководстве, но реальный пример показывает один из возможных подходов.
Мы остановились re каждый сабреддит отдельно, чтобы мы могли кэшировать каждый сабреддит.Когда пользователь переключается между ними во второй раз, обновление будет мгновенным, и нам не нужно будет обновлять данные, если мы этого не хотим. Не беспокойтесь о том, что все эти элементы находятся в памяти: если вы не имеете дело с десятками тысяч элементов, и ваш пользователь редко закрывает вкладку, вам не потребуется никакой очистки.
Для каждого списка элементов вы захотите сохранить isFetching
, чтобы показать счетчик, didInvalidate
, чтобы вы могли позже переключать его, когда данные устарели, lastUpdated
, чтобы вы знали, когда он был получен в прошлый раз и сами штук.В реальном приложении вы также захотите сохранить состояние разбивки на страницы, например
fetchedPageCount
и nextPageUrl
.
# Примечание о вложенных объектах
В этом примере мы сохраняем полученные элементы вместе с информацией о разбиении на страницы. Однако этот подход не будет работать, если у вас есть вложенные сущности, ссылающиеся друг на друга, или если вы позволяете пользователю редактировать элементы. Представьте, что пользователь хочет отредактировать полученный пост, но этот пост дублируется в нескольких местах в дереве состояний.Это было бы очень болезненно реализовать.
Если у вас есть вложенные сущности или если вы позволяете пользователям редактировать полученные сущности, вы должны хранить их отдельно в состоянии, как если бы это была база данных. В информации о нумерации страниц вы будете обращаться к ним только по их идентификаторам. Это позволяет вам всегда поддерживать их в актуальном состоянии. Реальный пример демонстрирует этот подход вместе с normalizr для нормализации вложенных ответов API. При таком подходе ваше состояние может выглядеть следующим образом:
Копировать{
selectedSubreddit: 'frontend',
entity: {
users: {
2: {
id: 2,
name: 'Andrew '
}
},
сообщений: {
42: {
id: 42,
title:' Путаница в отношении потока и реле ',
автор: 2
},
100: {
id: 100,
title: 'Создание простого приложения с использованием React JS и Flux Architecture',
автор: 2
}
}
},
сообщений BySubreddit: {
frontend: {
isFetching: true,didInvalidate: false,
элементов: []
},
reactjs: {
isFetching: false,
didInvalidate: false,
lastUpdated: 1439478405547,
items: [42, 100]
}
}
}
В этом руководстве мы не будем нормализовать сущности, но это то, что вы должны учитывать для более динамичное приложение.
# Примечание о составе редуктора
Здесь мы предполагаем, что вы понимаете состав редуктора с помощью combReducers ()
, как описано в разделе «Разделение редукторов» в руководстве по основам. Если нет, прочтите сначала.
redurs.js
Мы используем синтаксис вычисленных свойств ES6, поэтому мы можем обновить состояние [action.subreddit]
с помощью объекта .assign ()
кратко. Это:
return Object.assign ({}, state, {
[action.subreddit]: posts (state [action.subreddit], action)
})
эквивалентно этому:
Copylet nextState = {}
nextState [action.subreddit] = posts (state [action.subreddit], action)
return Object.assign ({}, state, nextState)
Мы извлекли сообщений (состояние, действие )
, который управляет состоянием определенного списка сообщений.Это просто состав редуктора! Это наш выбор, как разделить редуктор на меньшие редукторы, и в этом случае мы делегируем обновление элементов внутри объекта редуктору сообщений
. Реальный пример идет еще дальше, показывая, как создать фабрику редукторов для параметризованных редукторов разбиения на страницы.
redux-thunk
. Мы объясним, как работает промежуточное программное обеспечение в целом позже; на данный момент вам нужно знать только одну важную вещь: с помощью этого конкретного промежуточного программного обеспечения создатель действия может вернуть функцию вместо объекта действия. Таким образом, создатель действия становится преобразователем. actions.js
: actions.js
(Асинхронный) # Обратите внимание на fetch
В примерах мы используем fetch
API. Это новый API для выполнения сетевых запросов, который заменяет XMLHttpRequest
для наиболее распространенных нужд.Поскольку большинство браузеров еще не поддерживают его изначально, мы предлагаем вам использовать cross-fetch библиотеку
:
import fetch из 'cross-fetch'
Внутренне он использует полифил whatwg-fetch
на клиенте, и node-fetch
на сервере, поэтому вам не нужно будет изменять вызовы API, если вы сделаете свое приложение универсальным.
Имейте в виду, что любой полифил fetch
предполагает, что полифил Promise уже присутствует. Самый простой способ убедиться, что у вас есть полифилл Promise, - это включить полифил Babel ES6 в вашей точке входа перед запуском любого другого кода:
applyMiddleware ()
от Redux, как показано ниже: index.js
actions.js
(с выборкой
) store.dispatch ()
. типа
, которое указывает тип выполняемого действия. Типы обычно следует определять как строковые константы. Когда ваше приложение станет достаточно большим, вы можете переместить их в отдельный модуль.#Note on Boilerplate
Вам не нужно определять константы типа действия в отдельном файле или даже определять их вообще. Для небольшого проекта может быть проще просто использовать строковые литералы для типов действий.Однако явное объявление констант в больших базах кода дает некоторые преимущества. Прочтите Reducing Boilerplate, чтобы получить больше практических советов по поддержанию чистоты вашей кодовой базы.
типа
, структура объекта действия действительно зависит от вас. Если вам интересно, ознакомьтесь с рекомендациями по созданию действий в Flux Standard Action., индекс
, потому что мы храним их в массиве.В реальном приложении разумнее генерировать уникальный идентификатор каждый раз, когда создается что-то новое. индекс
, чем весь объект todo. dispatch ()
: dispatch ()
можно получить доступ непосредственно из магазина как store.dispatch ()
, но, скорее всего, вы получите к нему доступ с помощью помощника, такого как react-redux connect ()
. Вы можете использовать bindActionCreators ()
для автоматической привязки многих создателей действий к функции dispatch ()
. actions.js