Is there a way to improve performance of this simple SELECT query?
525K rows takes time to shovel.  It takes time to read from disk (unless it happens to be cached in RAM.  It takes time to send that many rows across the wire to the client.  And the client has to receive them.

The index is optimal; it has the desired columns in the desired order.  But it is suspicious.  Keep in mind that a PRIMARY KEY is, by definition, unique.  It is usually not reasonable to have a "value" in the PK.  And there is no difference if you leave it out.

One thing that will make a small improvement is to shrink the datatypes where practical.  Almost no application need BIGINT, but you have 3.  BIGINT is 8 bytes.  INT is only 4 bytes and can hold a timestamp (a la epoch).  Surely you don't have billions of 'Instruments'.  PhenomenonName could be normalized or perhaps turned into a 1-byte ENUM.