В общем пришла идея сделать проигрыватель винила, и встал вопрос о том, как задать нужную скорость вращения пластинки. Вращать пластинку требуется со скоростью от 33об/мин, предполагаю, что это можно реализовать с помощью шима, но т.к. с моторами дел не имел возник вопрос как это реализовать в скетче. Можно конечно и без ардуины, подбором напряжения и веса тонарма это сделать, что собственно пока и сделал, но хочется более грамотно реализовать. О качестве проигрывания тут конечно речи не идёт, ибо того же тонарма у меня нет, поэтому собрал колхоз из бумаги и юзаю обычную иглу. То что пластинка от обычной иглы портится я в курсе, если что. =)
Энкодер нашел, хотя никогда с энкодерами не работал, так что надо курить мануалы. А вот драйвера мотора нет, и купить нет возможности. Погуглил, нашел драйвер ULN2003, можно было бы вытравить печатку и собрать, но откуда выдрать такой драйвер пока никак не соображу.
Поскольку вам не нужно менять направление вращения мотора и мотор у вас наверняка не шаговый (ведь так?), то драйвер можно сварганить на одном транзисторе.
Мотор не шаговый, из принтера, за ссылку спс, но я не совсем понимаю, как в скетче указать обороты, значение же указывается от 0 до 255, как получить нужные 33 оборота?
Нужно следить за показаниями энкодера. Если энкодер показывает меньше 33 оборотов, то прибавляете значение шим, если больше - убавляете. Это называется "система с отрицательной обратной связью". Скорость вращения можно вычислять на каждом шаге энкодера. А значение от 0 до 255 - это просто скважность ШИМ, для разных моторов потребуются разные значения, так что на конкретную цифру заморачиваться не стоит. Только начальное значение нужно подобрать экспериментально.