Фрикционные автоколебания — различия между версиями

Материал из Department of Theoretical and Applied Mechanics
Перейти к: навигация, поиск
(Реализация на языке JavaScript)
 
(не показано 14 промежуточных версий 3 участников)
Строка 4: Строка 4:
  
 
== Постановка задачи ==
 
== Постановка задачи ==
* Изучение колебаний грузика, находящегося на движущейся дорожке.
+
* Изучение фрикционных автоколебаний.
* Реализация фрикционных колебаний на языке JavaScript
+
* Реализация колебаний грузика, находящегося на движущейся дорожке, на языке JavaScript.
* Построение фазовых траекторий
+
* Построение фазовых траекторий полученной модели.
  
 
== Общие сведения по теме ==
 
== Общие сведения по теме ==
[[File:SteadyPhasePortrait.png|thumb|Установившийся фазовый портрет]]
+
[[File:SteadyPhasePortrait.png|thumb|Устойчивый предельный цикл]]
 
Неплавность скольжения в условиях трения твердых тел при постоянной силе тяги может сопровождаться или не сопровождаться более или менее периодическими остановками. Эту неплавность называют '''фрикционными автоколебаниями'''. Для возникновения фрикционных автоколебаний необходимы условия, присущие автоколебательным системам.
 
Неплавность скольжения в условиях трения твердых тел при постоянной силе тяги может сопровождаться или не сопровождаться более или менее периодическими остановками. Эту неплавность называют '''фрикционными автоколебаниями'''. Для возникновения фрикционных автоколебаний необходимы условия, присущие автоколебательным системам.
  
При определенных параметрах можно получить установившийся фазовый портрет
+
При определенных параметрах можно получить установившийся фазовый портрет.
  
 
Уравнение движения имеет вид:
 
Уравнение движения имеет вид:
<math>m\ddot x = -cx + F(v) -F'(v) \dot x +\frac{1}{2}F''(v)(\dot x)^2 - \frac{1}{6}F'''(v)(\dot x)^3</math>
+
<math>m\ddot x = -cx + F(v) -F'(v) \dot x +\frac{1}{2}F''(v)(\dot x)^2 - \frac{1}{6}F'''(v)(\dot x)^3</math>,
 +
где
 +
* <math>m</math> - масса грузика;
 +
* <math>с</math> - жесткость пружины;
 +
* <math>F(v)</math> и ее производные - функции скорости движения движущейся дорожки;
 +
* <math>x</math> - текущая координата.
 +
 
 +
Положение равновесия определяется формулой <math>x_р=\frac{F(v)}{c}</math>.
  
 
== Советы по работе с программой ==
 
== Советы по работе с программой ==
 +
Самое первое окно программы - наша модель с визуализацией грузика, пружины и движущейся дорожки. Грузик можно перемещать мышкой. Далее идут ползунки с параметрами.
 +
* <math>m</math> - масса грузика. Изменяется от 0.01 до 10 с шагом 0.01;
 +
* <math>C</math> - жесткость пружины. Изменяется от 0 до 10 с шагом 0.01;
 +
* <math>B1</math> = <math>F'(v)</math>. Изменяется от -10 до 10 с шагом 0.01;
 +
* <math>B2</math> = <math>F''(v)</math>. Изменяется от 0 до 10 с шагом 0.01;
 +
* <math>B3</math> = <math>F'''(v)</math>. Изменяется от 0 до 10 с шагом 0.01;
 +
* <math>A</math> = <math>F(v)</math>. Изменяется от -1000 до 1000 с шагом 1.
 +
 +
Кнопка "Обновить страницу" позволяет сбросить параметры до первоначальных.
 +
 +
Далее реализован график колебаний относительно положения равновесия. За ним идет фазовая плоскость.
 +
 +
При <math>B1 > 0</math> происходит затухание колебаний, а при <math>B1 < 0 </math> - раскачка.
 +
 +
''Совет:'' '''НИКОГДА''' не делать массу равной нулю.
  
 +
''Совет:'' для получения установившихся автоколебаний необходимо <math>B1 и B3</math> выставить на нуль, а <math>B2</math> сделать не нулевым.
  
 
== Реализация на языке JavaScript ==
 
== Реализация на языке JavaScript ==
 +
 +
 +
'''Визуализация на языке JavaScript (разработчик - [[Шварёв Николай]], с использованием кода [[Нелинейные колебания груза с вынуждающей силой|Киселева Павла]]):'''
  
 
{{#widget:Iframe |url=http://tm.spbstu.ru/htmlets/Shvarev/TK/FrictionAutooscillations.html |width=800 |height=1200 |border=0 }}
 
{{#widget:Iframe |url=http://tm.spbstu.ru/htmlets/Shvarev/TK/FrictionAutooscillations.html |width=800 |height=1200 |border=0 }}

Текущая версия на 20:55, 30 мая 2016

Предисловие[править]

За основу была взята программа Нелинейные колебания груза с вынуждающей силой.

Постановка задачи[править]

  • Изучение фрикционных автоколебаний.
  • Реализация колебаний грузика, находящегося на движущейся дорожке, на языке JavaScript.
  • Построение фазовых траекторий полученной модели.

Общие сведения по теме[править]

Устойчивый предельный цикл

Неплавность скольжения в условиях трения твердых тел при постоянной силе тяги может сопровождаться или не сопровождаться более или менее периодическими остановками. Эту неплавность называют фрикционными автоколебаниями. Для возникновения фрикционных автоколебаний необходимы условия, присущие автоколебательным системам.

При определенных параметрах можно получить установившийся фазовый портрет.

Уравнение движения имеет вид: [math]m\ddot x = -cx + F(v) -F'(v) \dot x +\frac{1}{2}F''(v)(\dot x)^2 - \frac{1}{6}F'''(v)(\dot x)^3[/math], где

  • [math]m[/math] - масса грузика;
  • [math]с[/math] - жесткость пружины;
  • [math]F(v)[/math] и ее производные - функции скорости движения движущейся дорожки;
  • [math]x[/math] - текущая координата.

Положение равновесия определяется формулой [math]x_р=\frac{F(v)}{c}[/math].

Советы по работе с программой[править]

Самое первое окно программы - наша модель с визуализацией грузика, пружины и движущейся дорожки. Грузик можно перемещать мышкой. Далее идут ползунки с параметрами.

  • [math]m[/math] - масса грузика. Изменяется от 0.01 до 10 с шагом 0.01;
  • [math]C[/math] - жесткость пружины. Изменяется от 0 до 10 с шагом 0.01;
  • [math]B1[/math] = [math]F'(v)[/math]. Изменяется от -10 до 10 с шагом 0.01;
  • [math]B2[/math] = [math]F''(v)[/math]. Изменяется от 0 до 10 с шагом 0.01;
  • [math]B3[/math] = [math]F'''(v)[/math]. Изменяется от 0 до 10 с шагом 0.01;
  • [math]A[/math] = [math]F(v)[/math]. Изменяется от -1000 до 1000 с шагом 1.

Кнопка "Обновить страницу" позволяет сбросить параметры до первоначальных.

Далее реализован график колебаний относительно положения равновесия. За ним идет фазовая плоскость.

При [math]B1 \gt 0[/math] происходит затухание колебаний, а при [math]B1 \lt 0 [/math] - раскачка.

Совет: НИКОГДА не делать массу равной нулю.

Совет: для получения установившихся автоколебаний необходимо [math]B1 и B3[/math] выставить на нуль, а [math]B2[/math] сделать не нулевым.

Реализация на языке JavaScript[править]

Визуализация на языке JavaScript (разработчик - Шварёв Николай, с использованием кода Киселева Павла):