Frequency measuring using Arduino (AC analog input) What I aim to do:
To measure the frequency of an AC analog signal generated by an electrodynamic shaker, which has a peak voltage of 10V-- using an Arduino Uno.

What I have tried:
Tried using a circuit similar to an optocoupler (using a 2N2222) transistor to take pulse input, using the pulsein() function. However the duration is always returning as 0.

My questions:


Is this method an acceptable way of measuring frequency?
What could I be doing wrong such that the time duration is always returning 0?
Is there an easier way of carrying out this work?


Will put up the code if asked for. However it is basically just defining a few variables (for pins, duration etc), and then using the pulsein function.
This project includes a frequency counter.

https://www.instructables.com/id/Oscilloscope-in-a-Matchbox-Arduino/

From the project page:
This oscilloscope costs the price of an Arduino Nano (£2 and a display (£3) plus a few pence for resistors, etc. It's specification is: 


max 1M samples/second, min 1000sps
8-bits per sample
DC 0-5V; AC +/- 550mV, AC +/- 117mV, AC +/- 25mV
USB "PC scope" or built-in display
could be battery-powered
optional logic display
optional frequency meter
optional voltmeter
optional signal generator


My comment: I build it, it's a nice little project and the author is an expert programmer.