Оказа се доволно просто. Из интернет може да се намери описание кое-що, но практически всичките разчитат на известни параметри на двигателя, а в нашата си действителност случая рядко е тоя. За щастие всичко се изчислява доволно лесно.
Ето модела:

Lm и Rm са индуктивността и съпротивлението на намотките на мотора, и могат да се измерят директно. Това е електрическата част на модела, и в общия случай за неизвестен мотор разполагаме само и единствено с това като данни.
Механичната част е представена от Li, Rf, IcIs1, Bemf:
Li - e електрическия еквивалент на инерцията на мотора
Rf - електрическия еквивалент на загубите в системата (от триене в самия мотор + загубите от товара, вързан към мотора)
IcIs1 - преобразувател ток-напрежение, представляващ връзката между консумирания от мотора ток Imotor, и вътящия момент, който той произвежда
Bemf - преобразувател ток-напрежение, представляващ връзката между оборотите на мотора RPM и обратно генетраното ЕДН
IcIs1 генерира напрежение Vtorq, пропорционално на тока през двигателя Imotor, тоест пропорционално на въртящия момент, генериран от двигателя:
Vtorq = Imotor*Ktorq
Коефициентът Ktorq засега е неизвестен, но по своята същност представлява въртящия момент, който двигателя генерира за едница ток.
Токът Irpm, течащ през "механичната" част на двигателя , е пропорционален на оборотите на двигателя RPM:
RPM=(Irpm * 60)/(2*Pi), или
Irpm=(RPM * 2 * Pi)/60
Bemf генерира напрежение Vemf, пропорционално на тока през механичната част на мотора, тоест оборотите му, представляващо обратно генерираното ЕДН в следствие на въртенето на мотора.
Vemf=Irpm*Kbemf
Коефициента Kbemf също не ни е известен.
Ето и как процедираме:
1. Измерваме Lm и Rm директно
2. Включваме към мотора регулируемо захранване с напрежение Vmotor, и измерваме тока Imotor , който мотора консумира, и оборотите RPM, с които се върти.
3. Знаейки оборотите, пресмятаме тока в механичната част, отговарящ на тия обороти:
Irpm=(RPM * 2 * Pi)/60
4. Знаейки Imotor, Rm, и Irpm, пресмятаме обратното ЕДН, което мотора генерира: Vbemf=Vmotor-(Imotor*Rm)
5. Знаейки Irpm и Vbemf, пресмятаме коефициента на преобразуване обороти-обратно ЕДН: Kbemf=Vbemf/Irpm
И тук стигаме до "интересната" част:
Tрябва да намерим Rf, а за да го намерим ни трябва Кtorq. Разполагаме с връзката Irpm=Vtorq/Rf, или Irpm=(Imotor*Ktorq)/Rf. Въпроса е как да го намерим. Rf представя всичките механични загуби в системата, включително и от товара. Li пък представя механичната инерция на системата. Това колко бързо мотора ще ускорява и ще спира, зависи от тия двете, взети заедно. Еми, много лесно:
6. Знаем че в работен режим и известно входно напрежение Vmotor, мотора се върти с RPM обороти и консумира ток Imotor. Тоест електрическата мощност Pmotor в тоя режим e:
Pmotor=Vmotor*Imotor
7. Всичките загуби в системата отиват в двата резистора Rm (чиято стойност и тока Imotor, минаващ през него, са ни известни) и Rf, представящ всички останали загуби в системата. Тока Irms, минаващ през Rf също ни е известен. Тогава:
Pmotor=Prm+Prf
Prf=Pmotor-Prm
Prm=Rm*Imotor*Imotor
Prf=Vmotor*Imotor-Prm
Prf=Vmotor*Imotor-Rm*Imotor*Imotor
От друга страна:
Prf=Rf*Irpm*Irpm
Тоест:
Rf=Prf/(Irpm*Irpm)
Или:
Rf=(Vmotor*Imotor-Rb*Imotor*Imotor)/(Irpm*Irpm)
8. Вече ни е известна стойността на Rf. Остава да пресметнем коефициента Кtorq. За да мине през резистора Rf ток Irpm, напрежението Vtorq което трябва да даде IcIs1 трябва да е:
Vtorq=Irpm*Rf
От тук:
Ktorq=Vtorq/Imotor
Тоест, сами си сметнахме коефициента Ktorq, който по своята същност представлява въртящ момент за ампер. Вече имаме реална представа от това на какво е способен моторът, с който сме се захванали.
10. Остана единствено да се сметнe Li, представляваща инерцията на системата. Тук е малко по-трудно. Трябва да се измери за колко време от пълните си обороти мотора спира до нула, при дадени на късо жици. На практика може да се измерва времето, за което тока на входа на мотора пада от номинала си до 0, или примерно до 1% от стойността си. После се избира въответната стойност на Li, която отговаря на това. Друг един начин е да се изчисли за колко време тока в индуктивност, равна на Li, разреждаща се през резистори Rf и Rb, спада до нула. Понеже съм мързел и не ми се умуваше, с няколко експеримента в SPICE симулатора си нагодих индуктивността така че да отговаря на времето, за което истинския мотор спира.
Ето как от мотор с неизвестни данни чрез просто измерване на ток, напрежение и обороти, може да се изгради достатъчно прост и близък до действителността модел. На мен ми трябваше понеже към момента правя цифров контролер за такова чудо, и трябваше да проверя някои неща, които ми бяха в главата, но нямаше как да съм на 100% сигурен че става точно това, което става.
Модела има и своите недостатъци - например неуспешно моделира факта че всеки мотор тръгва едва след някаква начална стойност на тока, а под това просто харчи ток без да върши нищо. Естествено и това може да се моделира, но в случая не ми трябваше.
Дано на някой е полезно или интересно.
Оригиналния източник е тук:
http://www.ecircuitcenter.com/circui...otor_model.htm
Ето модела:
Lm и Rm са индуктивността и съпротивлението на намотките на мотора, и могат да се измерят директно. Това е електрическата част на модела, и в общия случай за неизвестен мотор разполагаме само и единствено с това като данни.
Механичната част е представена от Li, Rf, IcIs1, Bemf:
Li - e електрическия еквивалент на инерцията на мотора
Rf - електрическия еквивалент на загубите в системата (от триене в самия мотор + загубите от товара, вързан към мотора)
IcIs1 - преобразувател ток-напрежение, представляващ връзката между консумирания от мотора ток Imotor, и вътящия момент, който той произвежда
Bemf - преобразувател ток-напрежение, представляващ връзката между оборотите на мотора RPM и обратно генетраното ЕДН
IcIs1 генерира напрежение Vtorq, пропорционално на тока през двигателя Imotor, тоест пропорционално на въртящия момент, генериран от двигателя:
Vtorq = Imotor*Ktorq
Коефициентът Ktorq засега е неизвестен, но по своята същност представлява въртящия момент, който двигателя генерира за едница ток.
Токът Irpm, течащ през "механичната" част на двигателя , е пропорционален на оборотите на двигателя RPM:
RPM=(Irpm * 60)/(2*Pi), или
Irpm=(RPM * 2 * Pi)/60
Bemf генерира напрежение Vemf, пропорционално на тока през механичната част на мотора, тоест оборотите му, представляващо обратно генерираното ЕДН в следствие на въртенето на мотора.
Vemf=Irpm*Kbemf
Коефициента Kbemf също не ни е известен.
Ето и как процедираме:
1. Измерваме Lm и Rm директно
2. Включваме към мотора регулируемо захранване с напрежение Vmotor, и измерваме тока Imotor , който мотора консумира, и оборотите RPM, с които се върти.
3. Знаейки оборотите, пресмятаме тока в механичната част, отговарящ на тия обороти:
Irpm=(RPM * 2 * Pi)/60
4. Знаейки Imotor, Rm, и Irpm, пресмятаме обратното ЕДН, което мотора генерира: Vbemf=Vmotor-(Imotor*Rm)
5. Знаейки Irpm и Vbemf, пресмятаме коефициента на преобразуване обороти-обратно ЕДН: Kbemf=Vbemf/Irpm
И тук стигаме до "интересната" част:
Tрябва да намерим Rf, а за да го намерим ни трябва Кtorq. Разполагаме с връзката Irpm=Vtorq/Rf, или Irpm=(Imotor*Ktorq)/Rf. Въпроса е как да го намерим. Rf представя всичките механични загуби в системата, включително и от товара. Li пък представя механичната инерция на системата. Това колко бързо мотора ще ускорява и ще спира, зависи от тия двете, взети заедно. Еми, много лесно:
6. Знаем че в работен режим и известно входно напрежение Vmotor, мотора се върти с RPM обороти и консумира ток Imotor. Тоест електрическата мощност Pmotor в тоя режим e:
Pmotor=Vmotor*Imotor
7. Всичките загуби в системата отиват в двата резистора Rm (чиято стойност и тока Imotor, минаващ през него, са ни известни) и Rf, представящ всички останали загуби в системата. Тока Irms, минаващ през Rf също ни е известен. Тогава:
Pmotor=Prm+Prf
Prf=Pmotor-Prm
Prm=Rm*Imotor*Imotor
Prf=Vmotor*Imotor-Prm
Prf=Vmotor*Imotor-Rm*Imotor*Imotor
От друга страна:
Prf=Rf*Irpm*Irpm
Тоест:
Rf=Prf/(Irpm*Irpm)
Или:
Rf=(Vmotor*Imotor-Rb*Imotor*Imotor)/(Irpm*Irpm)
8. Вече ни е известна стойността на Rf. Остава да пресметнем коефициента Кtorq. За да мине през резистора Rf ток Irpm, напрежението Vtorq което трябва да даде IcIs1 трябва да е:
Vtorq=Irpm*Rf
От тук:
Ktorq=Vtorq/Imotor
Тоест, сами си сметнахме коефициента Ktorq, който по своята същност представлява въртящ момент за ампер. Вече имаме реална представа от това на какво е способен моторът, с който сме се захванали.
10. Остана единствено да се сметнe Li, представляваща инерцията на системата. Тук е малко по-трудно. Трябва да се измери за колко време от пълните си обороти мотора спира до нула, при дадени на късо жици. На практика може да се измерва времето, за което тока на входа на мотора пада от номинала си до 0, или примерно до 1% от стойността си. После се избира въответната стойност на Li, която отговаря на това. Друг един начин е да се изчисли за колко време тока в индуктивност, равна на Li, разреждаща се през резистори Rf и Rb, спада до нула. Понеже съм мързел и не ми се умуваше, с няколко експеримента в SPICE симулатора си нагодих индуктивността така че да отговаря на времето, за което истинския мотор спира.
Ето как от мотор с неизвестни данни чрез просто измерване на ток, напрежение и обороти, може да се изгради достатъчно прост и близък до действителността модел. На мен ми трябваше понеже към момента правя цифров контролер за такова чудо, и трябваше да проверя някои неща, които ми бяха в главата, но нямаше как да съм на 100% сигурен че става точно това, което става.
Модела има и своите недостатъци - например неуспешно моделира факта че всеки мотор тръгва едва след някаква начална стойност на тока, а под това просто харчи ток без да върши нищо. Естествено и това може да се моделира, но в случая не ми трябваше.
Дано на някой е полезно или интересно.
Оригиналния източник е тук:
http://www.ecircuitcenter.com/circui...otor_model.htm
Коментар