element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
NanoRama
  • Challenges & Projects
  • Project14
  • NanoRama
  • More
  • Cancel
NanoRama
Blog Project14 | NanoRama: Reconstruction of Elektrotechnika-EP-001 vinyl disc player
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join NanoRama to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: tariq.ahmad
  • Date Created: 11 May 2020 5:45 PM Date Created
  • Views 690 views
  • Likes 4 likes
  • Comments 0 comments
  • nanoramach
Related
Recommended

Project14 | NanoRama: Reconstruction of Elektrotechnika-EP-001 vinyl disc player

tariq.ahmad
tariq.ahmad
11 May 2020
image

NanoRama

Enter Your Project for a chance to win a Nano Grand Prize bundle for the most innovative use of Arduino plus a $400 shopping cart!

Submit an EntrySubmit an Entry  Back to homepage image
Project14 Home
Monthly Themes
Monthly Theme Poll

 

The following post is a rough translation (using google translate) of a post written in Ukrainian.   The was done to make this project more accessible to more members of the community.   You can read the entire post in its entirety here:

 

#NanoRamaCH   Перебудова програвача винилових дисків Radiotechnika-EP-001

Back in 1984, I bought a very modern vinyl record player, which was at that time very modern and very expensive to work in the USSR.

 

It was cool at the time.

 

But time had forgotten about it and i've highlighted a moment I forgot about,  but #COVID-19 freed up days for listening to old music collections.

 

But this miracle was no longer a part of the USSR ...

 

It's ability had been virtually reduced, you can see take a look at the electronics that were used at the time:

image

To begin with, "Soviet" electronics were discarded.

 

There is a 3-phase motor, an electromagnetic toner double, a vintage 220 V switch and control sensors with old conscious headlights.

 

So I designed a special shield operated by ARDUINO NANO.




image

image

 

I found a project that helped support the amplifier in: Elliott Sound

 

image

A printed circuit board (size 100x100 mm) was something to be done as well:
image

 

Here is the sketch for the Arduino Nano:

 

#include <TimerOne.h>

#define MuteALL 13 // Cartridge signal unit (heads)
// #define END_DISC 12 // Input from the hitchhiker sensor
// 11 // Резерв
#define Stroboscope 10 // Meander 50 Hz for stroboscope
#define TONARM_UP 9 // Exit to the power key of the toner microlift
#define PWM1 8 // Output to the power key phase1
#define PWM2 7 // Output to the power switch phase2/span>
#define PWM3 6 // Output to the power switch phase3
#define SET_45 5 // Team sensor "Incl.45"
#define STOP 4 // Stop and raise the tone sensor command
#define SET_33 3 // Team sensor "Vkl.33"
#define SET_UP 2 // UP Raise Tonerm Sensor Command
#define SET_DOWN 1 // DOWN Lower Tonarm Sensor Command
// # determine 0 // Reserve


#define LED_33 19 // AD5 // LED output 33/span>
#define LED_STOP 18 // AD4 // LED output STOP
#define LED_45 17 // AD3 // LED output 45
#define LED_DOWN 16 // AD2 // LED output DOWN
#define LED_UP 15 // AD1 // LED output UP
// # to determine Tuning_Res 14 // AD0 // Precision input resistor input

// ************************************************** ** ** *****************************
unsigned long Cycle_Start;
unsigned long Current_Time;
int Count_PWM = 0;
int SET_33_Value;
int SET_45_Value;
int SET_UP_Value;
int SET_DOWN_Value;
int STOP_Value;
int END_DISC_Value;
int Tuning = 0;
int Tuning_New = 0;
int ADJ = 0; // Analog input to reduce potentiometer
long Faza_Time = 0;
// ************************************************** ** ** *****************************




встановлення недійсності ()
{
// digitalWrite (resetPin, HIGH);
// delay (200);
// pinMode (resetPin, OUTPUT);
// delay (1000);


analogReference (DEFAULT);


pinMode (PWM1, OUTPUT);
pinMode (PWM2, OUTPUT);
pinMode (PWM3, OUTPUT);
pinMode (SET_33, INPUT);
pinMode (SET_45, INPUT);
pinMode (SET_UP, INPUT);
pinMode (SET_DOWN, INPUT);
pinMode (STOP, INPUT);
// pinMode (END_DISC, INPUT);
pinMode (LED_33, вихідний);
pinMode (LED_45, вихідний);
pinMode (LED_UP, OUTPUT);
pinMode (LED_DOWN, OUTPUT);
pinMode (LED_STOP, OUTPUT);
pinMode (TONARM_UP, OUTPUT);
digitalWrite (LED_33, HIGH);
digitalWrite (LED_45, HIGH);
digitalWrite (LED_UP, HIGH);
digitalWrite (LED_DOWN, LOW);
digitalWrite (LED_STOP, LOW);
digitalWrite (TONARM_UP, HIGH);
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, LOW);
Count_PWM = 0;
Timer1.attachInterrupt (PWM_Control);
тон (Strobe, 50);
noTone (Strobe);
}
// Finish Setting

invalid PWM_Control ()
{
if (Count_PWM == 0)
{
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, LOW);
}
else
{
if (Tuning_New! = Settings)
  {
      Settings = Tuning_New;
      Timer1.setPeriod (Faza_Time + (Settings - 64) * 8); // Duration of one phase in microseconds
  }

Count_PWM = Count_PWM +1;
так (Count_PWM == 4) {Count_PWM = 1;}
                       так (Count_PWM == 1)
                            {
                              digitalWrite (PWM1, HIGH);
                              digitalWrite (PWM2, LOW);
                              digitalWrite (PWM3, LOW);
                            }
                       так (Count_PWM == 2)
                            {
                              digitalWrite (PWM1, LOW);
                              digitalWrite (PWM2, HIGH);
                              digitalWrite (PWM3, LOW);
                              }
                       так (Count_PWM == 3)
                            {
                              digitalWrite (PWM1, LOW);
                              digitalWrite (PWM2, LOW);
                              digitalWrite (PWM3, HIGH);
                            }
}                        


} // END PWM_Control


void Tonarm_Vira () // tonarm lifting procedure
{
  digitalWrite (TONARM_UP, HIGH);
     digitalWrite (LED_UP, HIGH);
     digitalWrite (LED_DOWN, LOW);
  }




void Tonarm_Maina () // Tonarm release procedure
{
   digitalWrite (LED_UP, LOW);
   digitalWrite (LED_DOWN, HIGH);
   digitalWrite (TONARM_UP, LOW);
}
void smooth_Start ()
{
digitalWrite (PWM1, HIGH);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, LOW);


delay (20);
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, HIGH);
digitalWrite (PWM3, LOW);


delay (25);
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, HIGH);

delay (30);
digitalWrite (PWM1, HIGH);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, LOW);

delay (35);
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, HIGH);
digitalWrite (PWM3, LOW);

delay (40);
digitalWrite (PWM1, LOW);
digitalWrite (PWM2, LOW);
digitalWrite (PWM3, HIGH);
}


void loop () {
// ************************************************** ** ** *********


SET_33_Value = digitalRead (SET_33);
SET_45_Value = digitalRead (SET_45);
SET_UP_Value = digitalRead (SET_UP);
SET_DOWN_Value = digitalRead (SET_DOWN);
STOP_Value = digitalRead (STOP);
// END_DISC_Value = digitalRead (END_DISC);

Tuning_New = analogRead (A0) / 8;

if (SET_33_Value == HIGH) {digitalWrite (LED_STOP, HIGH);
                               digitalWrite (LED_33, LOW);
                               digitalWrite (LED_45, HIGH);                     
                               Count_PWM = 1;
                               Faza_Time = 75008; // 60-ті / 8 пол. / 3 крок / 33,33 об / хв
                               Timer1.initialize (Faza_Time);                           
                               Timer1.setPeriod (Faza_Time);
                               Timer1.start ();
                               tone (Strobe, 25);
                               // noTone (Strobe);
                               smooth_Start ();
                              }


if (SET_45_Value == HIGH) {digitalWrite (LED_STOP, HIGH);
                               digitalWrite (LED_45, LOW);
                               digitalWrite (LED_33, HIGH);
                               Count_PWM = 1;
                               Faza_Time = 55420; // = 60-ті / 8 пол. / 3 фаз. / 45,11 об / хв
                               Timer1.initialize (Faza_Time);                           
                               Timer1.setPeriod (Faza_Time);
                               Timer1.start ();
                               Tone (Strobe, 25);
                               // noTone (Strobe);
                               smooth_Start ();
                               }


YES ((STOP_Value == HIGH) || (END_DISC_Value == HIGH))
                              {
              
                               Timer1.stop ();
              
                               Count_PWM = 0;
                               Faza_Time = 0;
                               Tonarm_Vira ();
              
                               digitalWrite (PWM1, LOW);
                               digitalWrite (PWM2, LOW);
                               digitalWrite (PWM3, LOW);
                               digitalWrite (LED_STOP, LOW);
                               digitalWrite (LED_33, HIGH);
                               digitalWrite (LED_45, HIGH);
                               // TONE (Strobe, 50);
                               noTone (Strobe);                   
                               }


left (SET_UP_Value == HIGH) {
                                Tonarm_Vira ();
                              }
of course (SET_DOWN_Value == HIGH) {
                                Tonarm_Maina ();
                              }
// We turn the engine
} // The Final Sketch
#include <TimerOne.h>

 

Special PCB's for pre-amplifier (left) and player control  (right). In center ARDUINO Nano Rev3.0.

image

 

Partly assembled vinyl record player control shield:

image

Pre- amplifier without chip`s for testing on-board power stabilizer&filter:

image

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube